@jamesaphoenix/tx-core 0.4.2 → 0.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +480 -0
- package/dist/db.d.ts +28 -14
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +102 -14
- package/dist/db.js.map +1 -1
- package/dist/errors.d.ts +178 -34
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +119 -26
- package/dist/errors.js.map +1 -1
- package/dist/id.d.ts +10 -0
- package/dist/id.d.ts.map +1 -1
- package/dist/id.js +17 -1
- package/dist/id.js.map +1 -1
- package/dist/index.d.ts +15 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +62 -8
- package/dist/index.js.map +1 -1
- package/dist/layer.d.ts +23 -14
- package/dist/layer.d.ts.map +1 -1
- package/dist/layer.js +75 -76
- package/dist/layer.js.map +1 -1
- package/dist/mappers/anchor.d.ts +15 -1
- package/dist/mappers/anchor.d.ts.map +1 -1
- package/dist/mappers/anchor.js +95 -28
- package/dist/mappers/anchor.js.map +1 -1
- package/dist/mappers/attempt.d.ts +3 -1
- package/dist/mappers/attempt.d.ts.map +1 -1
- package/dist/mappers/attempt.js +23 -9
- package/dist/mappers/attempt.js.map +1 -1
- package/dist/mappers/candidate.d.ts +3 -1
- package/dist/mappers/candidate.d.ts.map +1 -1
- package/dist/mappers/candidate.js +46 -16
- package/dist/mappers/candidate.js.map +1 -1
- package/dist/mappers/claim.d.ts +1 -1
- package/dist/mappers/claim.d.ts.map +1 -1
- package/dist/mappers/claim.js +11 -4
- package/dist/mappers/claim.js.map +1 -1
- package/dist/mappers/deduplication.d.ts +13 -1
- package/dist/mappers/deduplication.d.ts.map +1 -1
- package/dist/mappers/deduplication.js +22 -3
- package/dist/mappers/deduplication.js.map +1 -1
- package/dist/mappers/doc.d.ts +24 -0
- package/dist/mappers/doc.d.ts.map +1 -0
- package/dist/mappers/doc.js +161 -0
- package/dist/mappers/doc.js.map +1 -0
- package/dist/mappers/edge.d.ts +10 -1
- package/dist/mappers/edge.d.ts.map +1 -1
- package/dist/mappers/edge.js +74 -12
- 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 +6 -7
- package/dist/mappers/index.d.ts.map +1 -1
- package/dist/mappers/index.js +10 -12
- package/dist/mappers/index.js.map +1 -1
- package/dist/mappers/learning.d.ts +9 -1
- package/dist/mappers/learning.d.ts.map +1 -1
- package/dist/mappers/learning.js +94 -14
- package/dist/mappers/learning.js.map +1 -1
- package/dist/mappers/orchestrator-state.d.ts +1 -1
- package/dist/mappers/orchestrator-state.d.ts.map +1 -1
- package/dist/mappers/orchestrator-state.js +31 -5
- package/dist/mappers/orchestrator-state.js.map +1 -1
- package/dist/mappers/parse-date.d.ts +11 -0
- package/dist/mappers/parse-date.d.ts.map +1 -0
- package/dist/mappers/parse-date.js +18 -0
- package/dist/mappers/parse-date.js.map +1 -0
- package/dist/mappers/run.d.ts +14 -4
- package/dist/mappers/run.d.ts.map +1 -1
- package/dist/mappers/run.js +49 -18
- package/dist/mappers/run.js.map +1 -1
- package/dist/mappers/task.d.ts +5 -1
- package/dist/mappers/task.d.ts.map +1 -1
- package/dist/mappers/task.js +66 -16
- package/dist/mappers/task.js.map +1 -1
- package/dist/mappers/tracked-project.d.ts +3 -1
- package/dist/mappers/tracked-project.d.ts.map +1 -1
- package/dist/mappers/tracked-project.js +23 -9
- package/dist/mappers/tracked-project.js.map +1 -1
- package/dist/mappers/worker.d.ts +1 -1
- package/dist/mappers/worker.d.ts.map +1 -1
- package/dist/mappers/worker.js +44 -6
- package/dist/mappers/worker.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 +46 -5
- package/dist/repo/anchor-repo.js.map +1 -1
- package/dist/repo/attempt-repo.d.ts +2 -2
- package/dist/repo/attempt-repo.d.ts.map +1 -1
- package/dist/repo/attempt-repo.js +16 -6
- 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 +22 -1
- package/dist/repo/candidate-repo.js.map +1 -1
- package/dist/repo/claim-repo.d.ts +46 -2
- package/dist/repo/claim-repo.d.ts.map +1 -1
- package/dist/repo/claim-repo.js +113 -6
- package/dist/repo/claim-repo.js.map +1 -1
- package/dist/repo/compaction-repo.d.ts +41 -0
- package/dist/repo/compaction-repo.d.ts.map +1 -0
- package/dist/repo/compaction-repo.js +84 -0
- package/dist/repo/compaction-repo.js.map +1 -0
- package/dist/repo/deduplication-repo.d.ts +9 -1
- package/dist/repo/deduplication-repo.d.ts.map +1 -1
- package/dist/repo/deduplication-repo.js +46 -9
- package/dist/repo/deduplication-repo.js.map +1 -1
- package/dist/repo/dep-repo.d.ts +27 -3
- package/dist/repo/dep-repo.d.ts.map +1 -1
- package/dist/repo/dep-repo.js +166 -39
- package/dist/repo/dep-repo.js.map +1 -1
- package/dist/repo/doc-repo.d.ts +59 -0
- package/dist/repo/doc-repo.d.ts.map +1 -0
- package/dist/repo/doc-repo.js +276 -0
- package/dist/repo/doc-repo.js.map +1 -0
- package/dist/repo/edge-repo.d.ts +1 -1
- package/dist/repo/edge-repo.d.ts.map +1 -1
- package/dist/repo/edge-repo.js +65 -34
- package/dist/repo/edge-repo.js.map +1 -1
- package/dist/repo/file-learning-repo.d.ts +3 -3
- package/dist/repo/file-learning-repo.d.ts.map +1 -1
- package/dist/repo/file-learning-repo.js +19 -8
- package/dist/repo/file-learning-repo.js.map +1 -1
- package/dist/repo/index.d.ts +4 -6
- package/dist/repo/index.d.ts.map +1 -1
- package/dist/repo/index.js +3 -5
- package/dist/repo/index.js.map +1 -1
- package/dist/repo/learning-repo.d.ts +10 -3
- package/dist/repo/learning-repo.d.ts.map +1 -1
- package/dist/repo/learning-repo.js +68 -11
- package/dist/repo/learning-repo.js.map +1 -1
- package/dist/repo/orchestrator-state-repo.d.ts.map +1 -1
- package/dist/repo/orchestrator-state-repo.js +8 -1
- package/dist/repo/orchestrator-state-repo.js.map +1 -1
- package/dist/repo/run-repo.d.ts +3 -3
- package/dist/repo/run-repo.d.ts.map +1 -1
- package/dist/repo/run-repo.js +40 -19
- package/dist/repo/run-repo.js.map +1 -1
- package/dist/repo/task-repo.d.ts +14 -3
- package/dist/repo/task-repo.d.ts.map +1 -1
- package/dist/repo/task-repo.js +194 -20
- 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 +15 -1
- package/dist/repo/tracked-project-repo.js.map +1 -1
- package/dist/repo/worker-repo.d.ts +3 -2
- package/dist/repo/worker-repo.d.ts.map +1 -1
- package/dist/repo/worker-repo.js +54 -8
- package/dist/repo/worker-repo.js.map +1 -1
- package/dist/schemas/sync.js +2 -2
- package/dist/schemas/sync.js.map +1 -1
- package/dist/schemas/worker.d.ts +1 -0
- package/dist/schemas/worker.d.ts.map +1 -1
- package/dist/schemas/worker.js +1 -0
- package/dist/schemas/worker.js.map +1 -1
- package/dist/services/agent-service.d.ts +57 -0
- package/dist/services/agent-service.d.ts.map +1 -0
- package/dist/services/agent-service.js +81 -0
- package/dist/services/agent-service.js.map +1 -0
- package/dist/services/anchor-service.js +1 -1
- package/dist/services/anchor-service.js.map +1 -1
- package/dist/services/anchor-verification.d.ts +8 -0
- package/dist/services/anchor-verification.d.ts.map +1 -1
- package/dist/services/anchor-verification.js +237 -37
- package/dist/services/anchor-verification.js.map +1 -1
- package/dist/services/ast-grep-service.d.ts.map +1 -1
- package/dist/services/ast-grep-service.js +93 -22
- package/dist/services/ast-grep-service.js.map +1 -1
- package/dist/services/attempt-service.d.ts.map +1 -1
- package/dist/services/attempt-service.js +1 -4
- package/dist/services/attempt-service.js.map +1 -1
- package/dist/services/auto-sync-service.d.ts +1 -1
- package/dist/services/auto-sync-service.d.ts.map +1 -1
- package/dist/services/auto-sync-service.js +18 -10
- package/dist/services/auto-sync-service.js.map +1 -1
- package/dist/services/claim-service.d.ts +8 -2
- package/dist/services/claim-service.d.ts.map +1 -1
- package/dist/services/claim-service.js +37 -23
- package/dist/services/claim-service.js.map +1 -1
- package/dist/services/compaction-service.d.ts +105 -0
- package/dist/services/compaction-service.d.ts.map +1 -0
- package/dist/services/compaction-service.js +369 -0
- package/dist/services/compaction-service.js.map +1 -0
- package/dist/services/cycle-scan-service.d.ts +32 -0
- package/dist/services/cycle-scan-service.d.ts.map +1 -0
- package/dist/services/cycle-scan-service.js +542 -0
- package/dist/services/cycle-scan-service.js.map +1 -0
- package/dist/services/daemon-service.d.ts +40 -2
- package/dist/services/daemon-service.d.ts.map +1 -1
- package/dist/services/daemon-service.js +199 -52
- package/dist/services/daemon-service.js.map +1 -1
- package/dist/services/deduplication-service.d.ts +8 -4
- package/dist/services/deduplication-service.d.ts.map +1 -1
- package/dist/services/deduplication-service.js +79 -25
- package/dist/services/deduplication-service.js.map +1 -1
- package/dist/services/dep-service.d.ts +2 -2
- package/dist/services/dep-service.d.ts.map +1 -1
- package/dist/services/dep-service.js +9 -5
- package/dist/services/dep-service.js.map +1 -1
- package/dist/services/diversifier-service.d.ts +2 -1
- package/dist/services/diversifier-service.d.ts.map +1 -1
- package/dist/services/diversifier-service.js +37 -43
- package/dist/services/diversifier-service.js.map +1 -1
- package/dist/services/doc-service.d.ts +49 -0
- package/dist/services/doc-service.d.ts.map +1 -0
- package/dist/services/doc-service.js +605 -0
- package/dist/services/doc-service.js.map +1 -0
- package/dist/services/edge-service.js +2 -2
- package/dist/services/edge-service.js.map +1 -1
- package/dist/services/embedding-service.d.ts +66 -2
- package/dist/services/embedding-service.d.ts.map +1 -1
- package/dist/services/embedding-service.js +138 -24
- package/dist/services/embedding-service.js.map +1 -1
- package/dist/services/file-learning-service.d.ts.map +1 -1
- package/dist/services/file-learning-service.js +8 -7
- package/dist/services/file-learning-service.js.map +1 -1
- package/dist/services/file-watcher-service.d.ts.map +1 -1
- package/dist/services/file-watcher-service.js +58 -11
- package/dist/services/file-watcher-service.js.map +1 -1
- package/dist/services/graph-expansion.d.ts +3 -0
- package/dist/services/graph-expansion.d.ts.map +1 -1
- package/dist/services/graph-expansion.js +28 -7
- package/dist/services/graph-expansion.js.map +1 -1
- package/dist/services/hierarchy-service.d.ts +1 -1
- package/dist/services/hierarchy-service.d.ts.map +1 -1
- package/dist/services/hierarchy-service.js +50 -32
- package/dist/services/hierarchy-service.js.map +1 -1
- package/dist/services/index.d.ts +13 -15
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +13 -15
- 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 +75 -42
- package/dist/services/learning-service.js.map +1 -1
- package/dist/services/llm-service.d.ts +62 -0
- package/dist/services/llm-service.d.ts.map +1 -0
- package/dist/services/llm-service.js +172 -0
- package/dist/services/llm-service.js.map +1 -0
- package/dist/services/migration-service.d.ts +1 -1
- package/dist/services/migration-service.d.ts.map +1 -1
- package/dist/services/migration-service.js +18 -7
- package/dist/services/migration-service.js.map +1 -1
- package/dist/services/orchestrator-service.d.ts +4 -3
- package/dist/services/orchestrator-service.d.ts.map +1 -1
- package/dist/services/orchestrator-service.js +67 -29
- package/dist/services/orchestrator-service.js.map +1 -1
- package/dist/services/promotion-service.d.ts +1 -1
- package/dist/services/promotion-service.js +1 -1
- package/dist/services/promotion-service.js.map +1 -1
- package/dist/services/query-expansion-service.d.ts +30 -9
- package/dist/services/query-expansion-service.d.ts.map +1 -1
- package/dist/services/query-expansion-service.js +54 -63
- package/dist/services/query-expansion-service.js.map +1 -1
- package/dist/services/ready-service.d.ts +21 -1
- package/dist/services/ready-service.d.ts.map +1 -1
- package/dist/services/ready-service.js +44 -21
- package/dist/services/ready-service.js.map +1 -1
- package/dist/services/retriever-service.d.ts +10 -10
- package/dist/services/retriever-service.d.ts.map +1 -1
- package/dist/services/retriever-service.js +53 -161
- package/dist/services/retriever-service.js.map +1 -1
- package/dist/services/swarm-verification.d.ts +2 -2
- package/dist/services/swarm-verification.d.ts.map +1 -1
- package/dist/services/swarm-verification.js +12 -6
- package/dist/services/swarm-verification.js.map +1 -1
- package/dist/services/sync-service.d.ts +17 -4
- package/dist/services/sync-service.d.ts.map +1 -1
- package/dist/services/sync-service.js +378 -114
- package/dist/services/sync-service.js.map +1 -1
- package/dist/services/task-service.d.ts +6 -4
- package/dist/services/task-service.d.ts.map +1 -1
- package/dist/services/task-service.js +162 -33
- package/dist/services/task-service.js.map +1 -1
- package/dist/services/tracing-service.d.ts +55 -0
- package/dist/services/tracing-service.d.ts.map +1 -0
- package/dist/services/tracing-service.js +99 -0
- package/dist/services/tracing-service.js.map +1 -0
- package/dist/services/transcript-adapter.d.ts +99 -0
- package/dist/services/transcript-adapter.d.ts.map +1 -0
- package/dist/services/transcript-adapter.js +283 -0
- package/dist/services/transcript-adapter.js.map +1 -0
- package/dist/services/validation-service.d.ts +85 -0
- package/dist/services/validation-service.d.ts.map +1 -0
- package/dist/services/validation-service.js +289 -0
- package/dist/services/validation-service.js.map +1 -0
- package/dist/services/worker-process.d.ts +23 -4
- package/dist/services/worker-process.d.ts.map +1 -1
- package/dist/services/worker-process.js +159 -70
- package/dist/services/worker-process.js.map +1 -1
- package/dist/services/worker-service.d.ts.map +1 -1
- package/dist/services/worker-service.js +7 -12
- package/dist/services/worker-service.js.map +1 -1
- package/dist/sync/claude-task-writer.d.ts +49 -0
- package/dist/sync/claude-task-writer.d.ts.map +1 -0
- package/dist/sync/claude-task-writer.js +135 -0
- package/dist/sync/claude-task-writer.js.map +1 -0
- package/dist/utils/doc-hash.d.ts +10 -0
- package/dist/utils/doc-hash.d.ts.map +1 -0
- package/dist/utils/doc-hash.js +14 -0
- package/dist/utils/doc-hash.js.map +1 -0
- package/dist/utils/doc-renderer.d.ts +44 -0
- package/dist/utils/doc-renderer.d.ts.map +1 -0
- package/dist/utils/doc-renderer.js +202 -0
- package/dist/utils/doc-renderer.js.map +1 -0
- package/dist/utils/math.d.ts +5 -1
- package/dist/utils/math.d.ts.map +1 -1
- package/dist/utils/math.js +12 -4
- package/dist/utils/math.js.map +1 -1
- package/dist/utils/sql.d.ts +9 -0
- package/dist/utils/sql.d.ts.map +1 -0
- package/dist/utils/sql.js +9 -0
- package/dist/utils/sql.js.map +1 -0
- package/dist/utils/toml-config.d.ts +22 -0
- package/dist/utils/toml-config.d.ts.map +1 -0
- package/dist/utils/toml-config.js +75 -0
- package/dist/utils/toml-config.js.map +1 -0
- package/dist/worker/hooks.d.ts +102 -0
- package/dist/worker/hooks.d.ts.map +1 -0
- package/dist/worker/hooks.js +11 -0
- package/dist/worker/hooks.js.map +1 -0
- package/dist/worker/index.d.ts +9 -0
- package/dist/worker/index.d.ts.map +1 -0
- package/dist/worker/index.js +8 -0
- package/dist/worker/index.js.map +1 -0
- package/dist/worker/run-worker.d.ts +33 -0
- package/dist/worker/run-worker.d.ts.map +1 -0
- package/dist/worker/run-worker.js +265 -0
- package/dist/worker/run-worker.js.map +1 -0
- package/package.json +14 -12
package/dist/layer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layer.js","sourceRoot":"","sources":["../src/layer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC9B,OAAO,
|
|
1
|
+
{"version":3,"file":"layer.js","sourceRoot":"","sources":["../src/layer.ts"],"names":[],"mappings":"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"}
|
package/dist/mappers/anchor.d.ts
CHANGED
|
@@ -1,14 +1,28 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Anchor mappers - convert database rows to domain objects
|
|
3
3
|
*/
|
|
4
|
-
import type { Anchor, AnchorRow, InvalidationLog, InvalidationLogRow } from "@jamesaphoenix/tx-types";
|
|
4
|
+
import type { Anchor, AnchorType, AnchorStatus, AnchorRow, InvalidationLog, InvalidationLogRow, InvalidationSource } from "@jamesaphoenix/tx-types";
|
|
5
5
|
export type { AnchorRow, InvalidationLogRow } from "@jamesaphoenix/tx-types";
|
|
6
|
+
/**
|
|
7
|
+
* Check if a string is a valid AnchorType.
|
|
8
|
+
*/
|
|
9
|
+
export declare const isValidAnchorType: (s: string) => s is AnchorType;
|
|
10
|
+
/**
|
|
11
|
+
* Check if a string is a valid AnchorStatus.
|
|
12
|
+
*/
|
|
13
|
+
export declare const isValidAnchorStatus: (s: string) => s is AnchorStatus;
|
|
14
|
+
/**
|
|
15
|
+
* Check if a string is a valid InvalidationSource.
|
|
16
|
+
*/
|
|
17
|
+
export declare const isValidInvalidationSource: (s: string) => s is InvalidationSource;
|
|
6
18
|
/**
|
|
7
19
|
* Convert a database row to an Anchor domain object.
|
|
20
|
+
* Validates anchor_type and status at runtime.
|
|
8
21
|
*/
|
|
9
22
|
export declare const rowToAnchor: (row: AnchorRow) => Anchor;
|
|
10
23
|
/**
|
|
11
24
|
* Convert a database row to an InvalidationLog domain object.
|
|
25
|
+
* Validates old_status, new_status, and detected_by at runtime.
|
|
12
26
|
*/
|
|
13
27
|
export declare const rowToInvalidationLog: (row: InvalidationLogRow) => InvalidationLog;
|
|
14
28
|
//# sourceMappingURL=anchor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anchor.d.ts","sourceRoot":"","sources":["../../src/mappers/anchor.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,MAAM,
|
|
1
|
+
{"version":3,"file":"anchor.d.ts","sourceRoot":"","sources":["../../src/mappers/anchor.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,MAAM,EACN,UAAU,EACV,YAAY,EACZ,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,yBAAyB,CAAA;AAUhC,YAAY,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5E;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,UAElD,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,YAEpD,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,yBAAyB,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,kBAE1D,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,KAAK,SAAS,KAAG,MAiC5C,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAAI,KAAK,kBAAkB,KAAG,eAqC9D,CAAA"}
|
package/dist/mappers/anchor.js
CHANGED
|
@@ -1,38 +1,105 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Anchor mappers - convert database rows to domain objects
|
|
3
3
|
*/
|
|
4
|
+
import { ANCHOR_TYPES, ANCHOR_STATUSES, INVALIDATION_SOURCES } from "@jamesaphoenix/tx-types";
|
|
5
|
+
import { InvalidStatusError } from "../errors.js";
|
|
6
|
+
import { parseDate } from "./parse-date.js";
|
|
7
|
+
/**
|
|
8
|
+
* Check if a string is a valid AnchorType.
|
|
9
|
+
*/
|
|
10
|
+
export const isValidAnchorType = (s) => {
|
|
11
|
+
return ANCHOR_TYPES.includes(s);
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Check if a string is a valid AnchorStatus.
|
|
15
|
+
*/
|
|
16
|
+
export const isValidAnchorStatus = (s) => {
|
|
17
|
+
return ANCHOR_STATUSES.includes(s);
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Check if a string is a valid InvalidationSource.
|
|
21
|
+
*/
|
|
22
|
+
export const isValidInvalidationSource = (s) => {
|
|
23
|
+
return INVALIDATION_SOURCES.includes(s);
|
|
24
|
+
};
|
|
4
25
|
/**
|
|
5
26
|
* Convert a database row to an Anchor domain object.
|
|
27
|
+
* Validates anchor_type and status at runtime.
|
|
6
28
|
*/
|
|
7
|
-
export const rowToAnchor = (row) =>
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
});
|
|
29
|
+
export const rowToAnchor = (row) => {
|
|
30
|
+
if (!isValidAnchorType(row.anchor_type)) {
|
|
31
|
+
throw new InvalidStatusError({
|
|
32
|
+
entity: "anchor",
|
|
33
|
+
status: row.anchor_type,
|
|
34
|
+
validStatuses: ANCHOR_TYPES,
|
|
35
|
+
rowId: row.id
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
if (!isValidAnchorStatus(row.status)) {
|
|
39
|
+
throw new InvalidStatusError({
|
|
40
|
+
entity: "anchor",
|
|
41
|
+
status: row.status,
|
|
42
|
+
validStatuses: ANCHOR_STATUSES,
|
|
43
|
+
rowId: row.id
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
return {
|
|
47
|
+
id: row.id,
|
|
48
|
+
learningId: row.learning_id,
|
|
49
|
+
anchorType: row.anchor_type,
|
|
50
|
+
anchorValue: row.anchor_value,
|
|
51
|
+
filePath: row.file_path,
|
|
52
|
+
symbolFqname: row.symbol_fqname,
|
|
53
|
+
lineStart: row.line_start,
|
|
54
|
+
lineEnd: row.line_end,
|
|
55
|
+
contentHash: row.content_hash,
|
|
56
|
+
contentPreview: row.content_preview,
|
|
57
|
+
status: row.status,
|
|
58
|
+
pinned: row.pinned === 1,
|
|
59
|
+
verifiedAt: row.verified_at ? parseDate(row.verified_at, "verified_at", row.id) : null,
|
|
60
|
+
createdAt: parseDate(row.created_at, "created_at", row.id)
|
|
61
|
+
};
|
|
62
|
+
};
|
|
23
63
|
/**
|
|
24
64
|
* Convert a database row to an InvalidationLog domain object.
|
|
65
|
+
* Validates old_status, new_status, and detected_by at runtime.
|
|
25
66
|
*/
|
|
26
|
-
export const rowToInvalidationLog = (row) =>
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
67
|
+
export const rowToInvalidationLog = (row) => {
|
|
68
|
+
if (!isValidAnchorStatus(row.old_status)) {
|
|
69
|
+
throw new InvalidStatusError({
|
|
70
|
+
entity: "invalidation_log.old_status",
|
|
71
|
+
status: row.old_status,
|
|
72
|
+
validStatuses: ANCHOR_STATUSES,
|
|
73
|
+
rowId: row.id
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
if (!isValidAnchorStatus(row.new_status)) {
|
|
77
|
+
throw new InvalidStatusError({
|
|
78
|
+
entity: "invalidation_log.new_status",
|
|
79
|
+
status: row.new_status,
|
|
80
|
+
validStatuses: ANCHOR_STATUSES,
|
|
81
|
+
rowId: row.id
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
if (!isValidInvalidationSource(row.detected_by)) {
|
|
85
|
+
throw new InvalidStatusError({
|
|
86
|
+
entity: "invalidation_log.detected_by",
|
|
87
|
+
status: row.detected_by,
|
|
88
|
+
validStatuses: INVALIDATION_SOURCES,
|
|
89
|
+
rowId: row.id
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
return {
|
|
93
|
+
id: row.id,
|
|
94
|
+
anchorId: row.anchor_id,
|
|
95
|
+
oldStatus: row.old_status,
|
|
96
|
+
newStatus: row.new_status,
|
|
97
|
+
reason: row.reason,
|
|
98
|
+
detectedBy: row.detected_by,
|
|
99
|
+
oldContentHash: row.old_content_hash,
|
|
100
|
+
newContentHash: row.new_content_hash,
|
|
101
|
+
similarityScore: row.similarity_score,
|
|
102
|
+
invalidatedAt: parseDate(row.invalidated_at, "invalidated_at", row.id)
|
|
103
|
+
};
|
|
104
|
+
};
|
|
38
105
|
//# sourceMappingURL=anchor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anchor.js","sourceRoot":"","sources":["../../src/mappers/anchor.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"anchor.js","sourceRoot":"","sources":["../../src/mappers/anchor.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,14 +2,16 @@
|
|
|
2
2
|
* Attempt mappers - convert database rows to domain objects
|
|
3
3
|
*/
|
|
4
4
|
import type { Attempt, AttemptOutcome, AttemptRow } from "@jamesaphoenix/tx-types";
|
|
5
|
+
import { ATTEMPT_OUTCOMES } from "@jamesaphoenix/tx-types";
|
|
5
6
|
export type { AttemptRow } from "@jamesaphoenix/tx-types";
|
|
6
|
-
export { ATTEMPT_OUTCOMES }
|
|
7
|
+
export { ATTEMPT_OUTCOMES };
|
|
7
8
|
/**
|
|
8
9
|
* Check if a string is a valid AttemptOutcome.
|
|
9
10
|
*/
|
|
10
11
|
export declare const isValidOutcome: (s: string) => s is AttemptOutcome;
|
|
11
12
|
/**
|
|
12
13
|
* Convert a database row to an Attempt domain object.
|
|
14
|
+
* Validates outcome and TaskId fields at runtime.
|
|
13
15
|
*/
|
|
14
16
|
export declare const rowToAttempt: (row: AttemptRow) => Attempt;
|
|
15
17
|
//# sourceMappingURL=attempt.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attempt.d.ts","sourceRoot":"","sources":["../../src/mappers/attempt.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,OAAO,
|
|
1
|
+
{"version":3,"file":"attempt.d.ts","sourceRoot":"","sources":["../../src/mappers/attempt.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,OAAO,EACP,cAAc,EACd,UAAU,EACX,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAgB,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAKxE,YAAY,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,gBAAgB,EAAE,CAAA;AAE3B;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,cAG/C,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,KAAK,UAAU,KAAG,OAiB9C,CAAA"}
|
package/dist/mappers/attempt.js
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Attempt mappers - convert database rows to domain objects
|
|
3
3
|
*/
|
|
4
|
-
|
|
4
|
+
import { assertTaskId, ATTEMPT_OUTCOMES } from "@jamesaphoenix/tx-types";
|
|
5
|
+
import { InvalidStatusError } from "../errors.js";
|
|
6
|
+
import { parseDate } from "./parse-date.js";
|
|
7
|
+
export { ATTEMPT_OUTCOMES };
|
|
5
8
|
/**
|
|
6
9
|
* Check if a string is a valid AttemptOutcome.
|
|
7
10
|
*/
|
|
@@ -11,13 +14,24 @@ export const isValidOutcome = (s) => {
|
|
|
11
14
|
};
|
|
12
15
|
/**
|
|
13
16
|
* Convert a database row to an Attempt domain object.
|
|
17
|
+
* Validates outcome and TaskId fields at runtime.
|
|
14
18
|
*/
|
|
15
|
-
export const rowToAttempt = (row) =>
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
});
|
|
19
|
+
export const rowToAttempt = (row) => {
|
|
20
|
+
if (!isValidOutcome(row.outcome)) {
|
|
21
|
+
throw new InvalidStatusError({
|
|
22
|
+
entity: "attempt",
|
|
23
|
+
status: row.outcome,
|
|
24
|
+
validStatuses: ATTEMPT_OUTCOMES,
|
|
25
|
+
rowId: row.id
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
return {
|
|
29
|
+
id: row.id,
|
|
30
|
+
taskId: assertTaskId(row.task_id),
|
|
31
|
+
approach: row.approach,
|
|
32
|
+
outcome: row.outcome,
|
|
33
|
+
reason: row.reason,
|
|
34
|
+
createdAt: parseDate(row.created_at, "created_at", row.id)
|
|
35
|
+
};
|
|
36
|
+
};
|
|
23
37
|
//# sourceMappingURL=attempt.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attempt.js","sourceRoot":"","sources":["../../src/mappers/attempt.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"attempt.js","sourceRoot":"","sources":["../../src/mappers/attempt.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAI3C,OAAO,EAAE,gBAAgB,EAAE,CAAA;AAE3B;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAS,EAAuB,EAAE;IAC/D,MAAM,QAAQ,GAAsB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;IAC3D,OAAO,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;AAC7B,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAe,EAAW,EAAE;IACvD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,kBAAkB,CAAC;YAC3B,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,GAAG,CAAC,OAAO;YACnB,aAAa,EAAE,gBAAgB;YAC/B,KAAK,EAAE,GAAG,CAAC,EAAE;SACd,CAAC,CAAA;IACJ,CAAC;IACD,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAmB;QAC3B,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC;QACjC,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,CAAC;KAC3D,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
* Candidate mappers - convert database rows to domain objects
|
|
3
3
|
*/
|
|
4
4
|
import type { LearningCandidate, CandidateRow, CandidateConfidence, CandidateCategory, CandidateStatus } from "@jamesaphoenix/tx-types";
|
|
5
|
+
import { CANDIDATE_CONFIDENCES, CANDIDATE_CATEGORIES, CANDIDATE_STATUSES } from "@jamesaphoenix/tx-types";
|
|
5
6
|
export type { CandidateRow } from "@jamesaphoenix/tx-types";
|
|
6
|
-
export { CANDIDATE_CONFIDENCES, CANDIDATE_CATEGORIES, CANDIDATE_STATUSES }
|
|
7
|
+
export { CANDIDATE_CONFIDENCES, CANDIDATE_CATEGORIES, CANDIDATE_STATUSES };
|
|
7
8
|
/**
|
|
8
9
|
* Check if a string is a valid CandidateConfidence.
|
|
9
10
|
*/
|
|
@@ -18,6 +19,7 @@ export declare const isValidStatus: (s: string) => s is CandidateStatus;
|
|
|
18
19
|
export declare const isValidCategory: (s: string) => s is CandidateCategory;
|
|
19
20
|
/**
|
|
20
21
|
* Convert a database row to a LearningCandidate domain object.
|
|
22
|
+
* Validates confidence, category, and status at runtime.
|
|
21
23
|
*/
|
|
22
24
|
export declare const rowToCandidate: (row: CandidateRow) => LearningCandidate;
|
|
23
25
|
//# sourceMappingURL=candidate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"candidate.d.ts","sourceRoot":"","sources":["../../src/mappers/candidate.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EAChB,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"candidate.d.ts","sourceRoot":"","sources":["../../src/mappers/candidate.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EAChB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,yBAAyB,CAAA;AAKhC,YAAY,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EACnB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,mBAGlD,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,aAAa,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,eAG9C,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,iBAYhD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,KAAK,YAAY,KAAG,iBAwClD,CAAA"}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Candidate mappers - convert database rows to domain objects
|
|
3
3
|
*/
|
|
4
|
-
|
|
4
|
+
import { CANDIDATE_CONFIDENCES, CANDIDATE_CATEGORIES, CANDIDATE_STATUSES } from "@jamesaphoenix/tx-types";
|
|
5
|
+
import { InvalidStatusError } from "../errors.js";
|
|
6
|
+
import { parseDate } from "./parse-date.js";
|
|
7
|
+
export { CANDIDATE_CONFIDENCES, CANDIDATE_CATEGORIES, CANDIDATE_STATUSES };
|
|
5
8
|
/**
|
|
6
9
|
* Check if a string is a valid CandidateConfidence.
|
|
7
10
|
*/
|
|
@@ -34,20 +37,47 @@ export const isValidCategory = (s) => {
|
|
|
34
37
|
};
|
|
35
38
|
/**
|
|
36
39
|
* Convert a database row to a LearningCandidate domain object.
|
|
40
|
+
* Validates confidence, category, and status at runtime.
|
|
37
41
|
*/
|
|
38
|
-
export const rowToCandidate = (row) =>
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
42
|
+
export const rowToCandidate = (row) => {
|
|
43
|
+
if (!isValidConfidence(row.confidence)) {
|
|
44
|
+
throw new InvalidStatusError({
|
|
45
|
+
entity: "candidate",
|
|
46
|
+
status: row.confidence,
|
|
47
|
+
validStatuses: CANDIDATE_CONFIDENCES,
|
|
48
|
+
rowId: row.id
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
if (row.category !== null && !isValidCategory(row.category)) {
|
|
52
|
+
throw new InvalidStatusError({
|
|
53
|
+
entity: "candidate.category",
|
|
54
|
+
status: row.category,
|
|
55
|
+
validStatuses: CANDIDATE_CATEGORIES,
|
|
56
|
+
rowId: row.id
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
if (!isValidStatus(row.status)) {
|
|
60
|
+
throw new InvalidStatusError({
|
|
61
|
+
entity: "candidate",
|
|
62
|
+
status: row.status,
|
|
63
|
+
validStatuses: CANDIDATE_STATUSES,
|
|
64
|
+
rowId: row.id
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
return {
|
|
68
|
+
id: row.id,
|
|
69
|
+
content: row.content,
|
|
70
|
+
confidence: row.confidence,
|
|
71
|
+
category: row.category,
|
|
72
|
+
sourceFile: row.source_file,
|
|
73
|
+
sourceRunId: row.source_run_id,
|
|
74
|
+
sourceTaskId: row.source_task_id,
|
|
75
|
+
extractedAt: parseDate(row.extracted_at, "extracted_at", row.id),
|
|
76
|
+
status: row.status,
|
|
77
|
+
reviewedAt: row.reviewed_at ? parseDate(row.reviewed_at, "reviewed_at", row.id) : null,
|
|
78
|
+
reviewedBy: row.reviewed_by,
|
|
79
|
+
promotedLearningId: row.promoted_learning_id,
|
|
80
|
+
rejectionReason: row.rejection_reason
|
|
81
|
+
};
|
|
82
|
+
};
|
|
53
83
|
//# sourceMappingURL=candidate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"candidate.js","sourceRoot":"","sources":["../../src/mappers/candidate.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"candidate.js","sourceRoot":"","sources":["../../src/mappers/candidate.ts"],"names":[],"mappings":"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"}
|
package/dist/mappers/claim.d.ts
CHANGED
|
@@ -24,7 +24,7 @@ export declare const CLAIM_STATUSES: readonly ["active", "released", "expired",
|
|
|
24
24
|
export declare const isValidClaimStatus: (s: string) => s is ClaimStatus;
|
|
25
25
|
/**
|
|
26
26
|
* Convert a database row to a TaskClaim domain object.
|
|
27
|
-
* Throws if status is invalid.
|
|
27
|
+
* Throws InvalidStatusError if status is invalid.
|
|
28
28
|
*/
|
|
29
29
|
export declare const rowToClaim: (row: ClaimRow) => TaskClaim;
|
|
30
30
|
//# sourceMappingURL=claim.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claim.d.ts","sourceRoot":"","sources":["../../src/mappers/claim.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"claim.d.ts","sourceRoot":"","sources":["../../src/mappers/claim.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAElE;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,gBAAgB,EAAE,MAAM,CAAA;IACxB,aAAa,EAAE,MAAM,CAAA;IACrB,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,yDAA0D,CAAA;AAErF;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,WAEnD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,KAAK,QAAQ,KAAG,SAkB1C,CAAA"}
|
package/dist/mappers/claim.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Claim mappers - convert database rows to domain objects
|
|
3
3
|
*/
|
|
4
|
+
import { InvalidStatusError } from "../errors.js";
|
|
5
|
+
import { parseDate } from "./parse-date.js";
|
|
4
6
|
/**
|
|
5
7
|
* Valid claim statuses.
|
|
6
8
|
*/
|
|
@@ -13,18 +15,23 @@ export const isValidClaimStatus = (s) => {
|
|
|
13
15
|
};
|
|
14
16
|
/**
|
|
15
17
|
* Convert a database row to a TaskClaim domain object.
|
|
16
|
-
* Throws if status is invalid.
|
|
18
|
+
* Throws InvalidStatusError if status is invalid.
|
|
17
19
|
*/
|
|
18
20
|
export const rowToClaim = (row) => {
|
|
19
21
|
if (!isValidClaimStatus(row.status)) {
|
|
20
|
-
throw new
|
|
22
|
+
throw new InvalidStatusError({
|
|
23
|
+
entity: "claim",
|
|
24
|
+
status: row.status,
|
|
25
|
+
validStatuses: CLAIM_STATUSES,
|
|
26
|
+
rowId: row.id
|
|
27
|
+
});
|
|
21
28
|
}
|
|
22
29
|
return {
|
|
23
30
|
id: row.id,
|
|
24
31
|
taskId: row.task_id,
|
|
25
32
|
workerId: row.worker_id,
|
|
26
|
-
claimedAt:
|
|
27
|
-
leaseExpiresAt:
|
|
33
|
+
claimedAt: parseDate(row.claimed_at, "claimed_at", row.id),
|
|
34
|
+
leaseExpiresAt: parseDate(row.lease_expires_at, "lease_expires_at", row.id),
|
|
28
35
|
renewedCount: row.renewed_count,
|
|
29
36
|
status: row.status
|
|
30
37
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claim.js","sourceRoot":"","sources":["../../src/mappers/claim.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"claim.js","sourceRoot":"","sources":["../../src/mappers/claim.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAgB3C;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,CAAU,CAAA;AAErF;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAS,EAAoB,EAAE;IAChE,OAAQ,cAAoC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;AAC1D,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAa,EAAa,EAAE;IACrD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,kBAAkB,CAAC;YAC3B,MAAM,EAAE,OAAO;YACf,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,aAAa,EAAE,cAAc;YAC7B,KAAK,EAAE,GAAG,CAAC,EAAE;SACd,CAAC,CAAA;IACJ,CAAC;IACD,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,MAAM,EAAE,GAAG,CAAC,OAAO;QACnB,QAAQ,EAAE,GAAG,CAAC,SAAS;QACvB,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,CAAC;QAC1D,cAAc,EAAE,SAAS,CAAC,GAAG,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,GAAG,CAAC,EAAE,CAAC;QAC3E,YAAY,EAAE,GAAG,CAAC,aAAa;QAC/B,MAAM,EAAE,GAAG,CAAC,MAAM;KACnB,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -2,10 +2,22 @@
|
|
|
2
2
|
* Deduplication mappers - convert database rows to domain objects
|
|
3
3
|
*/
|
|
4
4
|
import type { ProcessedHash, ProcessedHashRow, FileProgress, FileProgressRow } from "@jamesaphoenix/tx-types";
|
|
5
|
+
/**
|
|
6
|
+
* Normalize content for deduplication comparison.
|
|
7
|
+
* Handles common semantic equivalences:
|
|
8
|
+
* - Trailing/leading whitespace
|
|
9
|
+
* - Line ending differences (CRLF → LF)
|
|
10
|
+
* - Unicode normalization (NFC canonical form)
|
|
11
|
+
*/
|
|
12
|
+
export declare const normalizeContent: (content: string) => string;
|
|
5
13
|
/**
|
|
6
14
|
* Compute SHA256 hash of content.
|
|
15
|
+
* By default, hashes raw content for backward compatibility with existing data.
|
|
16
|
+
* Pass normalize=true to normalize (trim, CRLF→LF, NFC) before hashing,
|
|
17
|
+
* which catches semantic duplicates but produces different hashes for
|
|
18
|
+
* previously stored content.
|
|
7
19
|
*/
|
|
8
|
-
export declare const hashContent: (content: string) => string;
|
|
20
|
+
export declare const hashContent: (content: string, normalize?: boolean) => string;
|
|
9
21
|
/**
|
|
10
22
|
* Convert a database row to a ProcessedHash domain object.
|
|
11
23
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deduplication.d.ts","sourceRoot":"","sources":["../../src/mappers/deduplication.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,YAAY,EACZ,eAAe,EAChB,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"deduplication.d.ts","sourceRoot":"","sources":["../../src/mappers/deduplication.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,YAAY,EACZ,eAAe,EAChB,MAAM,yBAAyB,CAAA;AAGhC;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,GAAI,SAAS,MAAM,KAAG,MAI9B,CAAA;AAErB;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GAAI,SAAS,MAAM,EAAE,mBAAiB,KAAG,MAGhE,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,KAAK,gBAAgB,KAAG,aAMzD,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,GAAI,MAAM,aAAa;;;;;;CAMxD,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,KAAK,eAAe,KAAG,YAQvD,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAAI,UAAU,YAAY;;;;;;;;CAQ1D,CAAA"}
|
|
@@ -2,10 +2,29 @@
|
|
|
2
2
|
* Deduplication mappers - convert database rows to domain objects
|
|
3
3
|
*/
|
|
4
4
|
import { createHash } from "crypto";
|
|
5
|
+
import { parseDate } from "./parse-date.js";
|
|
6
|
+
/**
|
|
7
|
+
* Normalize content for deduplication comparison.
|
|
8
|
+
* Handles common semantic equivalences:
|
|
9
|
+
* - Trailing/leading whitespace
|
|
10
|
+
* - Line ending differences (CRLF → LF)
|
|
11
|
+
* - Unicode normalization (NFC canonical form)
|
|
12
|
+
*/
|
|
13
|
+
export const normalizeContent = (content) => content
|
|
14
|
+
.trim()
|
|
15
|
+
.replace(/\r\n/g, "\n")
|
|
16
|
+
.normalize("NFC");
|
|
5
17
|
/**
|
|
6
18
|
* Compute SHA256 hash of content.
|
|
19
|
+
* By default, hashes raw content for backward compatibility with existing data.
|
|
20
|
+
* Pass normalize=true to normalize (trim, CRLF→LF, NFC) before hashing,
|
|
21
|
+
* which catches semantic duplicates but produces different hashes for
|
|
22
|
+
* previously stored content.
|
|
7
23
|
*/
|
|
8
|
-
export const hashContent = (content) =>
|
|
24
|
+
export const hashContent = (content, normalize = false) => {
|
|
25
|
+
const input = normalize ? normalizeContent(content) : content;
|
|
26
|
+
return createHash("sha256").update(input).digest("hex");
|
|
27
|
+
};
|
|
9
28
|
/**
|
|
10
29
|
* Convert a database row to a ProcessedHash domain object.
|
|
11
30
|
*/
|
|
@@ -14,7 +33,7 @@ export const rowToProcessedHash = (row) => ({
|
|
|
14
33
|
contentHash: row.content_hash,
|
|
15
34
|
sourceFile: row.source_file,
|
|
16
35
|
sourceLine: row.source_line,
|
|
17
|
-
processedAt:
|
|
36
|
+
processedAt: parseDate(row.processed_at, "processed_at", row.id)
|
|
18
37
|
});
|
|
19
38
|
/**
|
|
20
39
|
* Serialize ProcessedHash for JSON output.
|
|
@@ -36,7 +55,7 @@ export const rowToFileProgress = (row) => ({
|
|
|
36
55
|
lastByteOffset: row.last_byte_offset,
|
|
37
56
|
fileSize: row.file_size,
|
|
38
57
|
fileChecksum: row.file_checksum,
|
|
39
|
-
lastProcessedAt:
|
|
58
|
+
lastProcessedAt: parseDate(row.last_processed_at, "last_processed_at", row.id)
|
|
40
59
|
});
|
|
41
60
|
/**
|
|
42
61
|
* Serialize FileProgress for JSON output.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deduplication.js","sourceRoot":"","sources":["../../src/mappers/deduplication.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"deduplication.js","sourceRoot":"","sources":["../../src/mappers/deduplication.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAOnC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAe,EAAU,EAAE,CAC1D,OAAO;KACJ,IAAI,EAAE;KACN,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC;KACtB,SAAS,CAAC,KAAK,CAAC,CAAA;AAErB;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,OAAe,EAAE,SAAS,GAAG,KAAK,EAAU,EAAE;IACxE,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;IAC7D,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AACzD,CAAC,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAAqB,EAAiB,EAAE,CAAC,CAAC;IAC3E,EAAE,EAAE,GAAG,CAAC,EAAE;IACV,WAAW,EAAE,GAAG,CAAC,YAAY;IAC7B,UAAU,EAAE,GAAG,CAAC,WAAW;IAC3B,UAAU,EAAE,GAAG,CAAC,WAAW;IAC3B,WAAW,EAAE,SAAS,CAAC,GAAG,CAAC,YAAY,EAAE,cAAc,EAAE,GAAG,CAAC,EAAE,CAAC;CACjE,CAAC,CAAA;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,IAAmB,EAAE,EAAE,CAAC,CAAC;IAC9D,EAAE,EAAE,IAAI,CAAC,EAAE;IACX,WAAW,EAAE,IAAI,CAAC,WAAW;IAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;IAC3B,UAAU,EAAE,IAAI,CAAC,UAAU;IAC3B,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE;CAC5C,CAAC,CAAA;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,GAAoB,EAAgB,EAAE,CAAC,CAAC;IACxE,EAAE,EAAE,GAAG,CAAC,EAAE;IACV,QAAQ,EAAE,GAAG,CAAC,SAAS;IACvB,iBAAiB,EAAE,GAAG,CAAC,mBAAmB;IAC1C,cAAc,EAAE,GAAG,CAAC,gBAAgB;IACpC,QAAQ,EAAE,GAAG,CAAC,SAAS;IACvB,YAAY,EAAE,GAAG,CAAC,aAAa;IAC/B,eAAe,EAAE,SAAS,CAAC,GAAG,CAAC,iBAAiB,EAAE,mBAAmB,EAAE,GAAG,CAAC,EAAE,CAAC;CAC/E,CAAC,CAAA;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,QAAsB,EAAE,EAAE,CAAC,CAAC;IAChE,EAAE,EAAE,QAAQ,CAAC,EAAE;IACf,QAAQ,EAAE,QAAQ,CAAC,QAAQ;IAC3B,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;IAC7C,cAAc,EAAE,QAAQ,CAAC,cAAc;IACvC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;IAC3B,YAAY,EAAE,QAAQ,CAAC,YAAY;IACnC,eAAe,EAAE,QAAQ,CAAC,eAAe,CAAC,WAAW,EAAE;CACxD,CAAC,CAAA"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Doc mappers - convert database rows to domain objects
|
|
3
|
+
*/
|
|
4
|
+
import type { Doc, DocKind, DocStatus, DocLink, DocLinkType, TaskDocLink, TaskDocLinkType, Invariant, InvariantEnforcement, InvariantStatus, InvariantCheck, DocRow, DocLinkRow, TaskDocLinkRow, InvariantRow, InvariantCheckRow } from "@jamesaphoenix/tx-types";
|
|
5
|
+
import { DOC_KINDS, DOC_STATUSES, DOC_LINK_TYPES, TASK_DOC_LINK_TYPES, INVARIANT_ENFORCEMENT_TYPES, INVARIANT_STATUSES } from "@jamesaphoenix/tx-types";
|
|
6
|
+
export type { DocRow, DocLinkRow, TaskDocLinkRow, InvariantRow, InvariantCheckRow };
|
|
7
|
+
export { DOC_KINDS, DOC_STATUSES, DOC_LINK_TYPES, TASK_DOC_LINK_TYPES, INVARIANT_ENFORCEMENT_TYPES, INVARIANT_STATUSES };
|
|
8
|
+
export declare const isValidDocKind: (s: string) => s is DocKind;
|
|
9
|
+
export declare const isValidDocStatus: (s: string) => s is DocStatus;
|
|
10
|
+
export declare const isValidDocLinkType: (s: string) => s is DocLinkType;
|
|
11
|
+
export declare const isValidTaskDocLinkType: (s: string) => s is TaskDocLinkType;
|
|
12
|
+
export declare const isValidInvariantEnforcement: (s: string) => s is InvariantEnforcement;
|
|
13
|
+
export declare const isValidInvariantStatus: (s: string) => s is InvariantStatus;
|
|
14
|
+
/**
|
|
15
|
+
* Convert a database row to a Doc domain object.
|
|
16
|
+
* Validates kind and status at runtime.
|
|
17
|
+
* Branded integer ID uses 'as' cast (SQLite guarantees integer type).
|
|
18
|
+
*/
|
|
19
|
+
export declare const rowToDoc: (row: DocRow) => Doc;
|
|
20
|
+
export declare const rowToDocLink: (row: DocLinkRow) => DocLink;
|
|
21
|
+
export declare const rowToTaskDocLink: (row: TaskDocLinkRow) => TaskDocLink;
|
|
22
|
+
export declare const rowToInvariant: (row: InvariantRow) => Invariant;
|
|
23
|
+
export declare const rowToInvariantCheck: (row: InvariantCheckRow) => InvariantCheck;
|
|
24
|
+
//# sourceMappingURL=doc.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doc.d.ts","sourceRoot":"","sources":["../../src/mappers/doc.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,GAAG,EACH,OAAO,EACP,SAAS,EACT,OAAO,EACP,WAAW,EACX,WAAW,EACX,eAAe,EACf,SAAS,EACT,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,MAAM,EACN,UAAU,EACV,cAAc,EACd,YAAY,EACZ,iBAAiB,EAClB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EACL,SAAS,EACT,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,2BAA2B,EAC3B,kBAAkB,EACnB,MAAM,yBAAyB,CAAA;AAKhC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAE,iBAAiB,EAAE,CAAA;AACnF,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,kBAAkB,EAAE,CAAA;AAcxH,eAAO,MAAM,cAAc,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,OACpB,CAAA;AAE5B,eAAO,MAAM,gBAAgB,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,SACpB,CAAA;AAE9B,eAAO,MAAM,kBAAkB,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,WACpB,CAAA;AAEhC,eAAO,MAAM,sBAAsB,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,eACpB,CAAA;AAEpC,eAAO,MAAM,2BAA2B,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,oBACpB,CAAA;AAEzC,eAAO,MAAM,sBAAsB,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,eACpB,CAAA;AA2BpC;;;;GAIG;AACH,eAAO,MAAM,QAAQ,GAAI,KAAK,MAAM,KAAG,GAkCtC,CAAA;AAED,eAAO,MAAM,YAAY,GAAI,KAAK,UAAU,KAAG,OAiB9C,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,KAAK,cAAc,KAAG,WAiBtD,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,KAAK,YAAY,KAAG,SAgClD,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,KAAK,iBAAiB,KAAG,cAS5D,CAAA"}
|