@proofhound/core 0.1.7 → 0.1.9

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.
Files changed (199) hide show
  1. package/dist/server/channels/mcp/annotation.tools.d.ts.map +1 -1
  2. package/dist/server/channels/mcp/annotation.tools.js +18 -5
  3. package/dist/server/channels/mcp/annotation.tools.js.map +1 -1
  4. package/dist/server/channels/mcp/canary-release.tools.d.ts.map +1 -1
  5. package/dist/server/channels/mcp/canary-release.tools.js +2 -1
  6. package/dist/server/channels/mcp/canary-release.tools.js.map +1 -1
  7. package/dist/server/channels/mcp/dataset.tools.d.ts.map +1 -1
  8. package/dist/server/channels/mcp/dataset.tools.js +49 -1
  9. package/dist/server/channels/mcp/dataset.tools.js.map +1 -1
  10. package/dist/server/channels/mcp/mcp-server.factory.d.ts +9 -1
  11. package/dist/server/channels/mcp/mcp-server.factory.d.ts.map +1 -1
  12. package/dist/server/channels/mcp/mcp-server.factory.js +28 -3
  13. package/dist/server/channels/mcp/mcp-server.factory.js.map +1 -1
  14. package/dist/server/channels/mcp/prompt.tools.d.ts.map +1 -1
  15. package/dist/server/channels/mcp/prompt.tools.js +34 -2
  16. package/dist/server/channels/mcp/prompt.tools.js.map +1 -1
  17. package/dist/server/channels/mcp/release-line.tools.d.ts.map +1 -1
  18. package/dist/server/channels/mcp/release-line.tools.js +292 -4
  19. package/dist/server/channels/mcp/release-line.tools.js.map +1 -1
  20. package/dist/server/channels/mcp/run-result.tools.d.ts.map +1 -1
  21. package/dist/server/channels/mcp/run-result.tools.js +7 -5
  22. package/dist/server/channels/mcp/run-result.tools.js.map +1 -1
  23. package/dist/server/common/contracts/index.d.ts +1 -0
  24. package/dist/server/common/contracts/index.d.ts.map +1 -1
  25. package/dist/server/common/contracts/index.js +1 -0
  26. package/dist/server/common/contracts/index.js.map +1 -1
  27. package/dist/server/common/contracts/local-contracts.module.d.ts.map +1 -1
  28. package/dist/server/common/contracts/local-contracts.module.js +3 -0
  29. package/dist/server/common/contracts/local-contracts.module.js.map +1 -1
  30. package/dist/server/common/contracts/usage-metering.hook.d.ts +33 -0
  31. package/dist/server/common/contracts/usage-metering.hook.d.ts.map +1 -0
  32. package/dist/server/common/contracts/usage-metering.hook.js +43 -0
  33. package/dist/server/common/contracts/usage-metering.hook.js.map +1 -0
  34. package/dist/server/infrastructure/llm/run-result-writer.d.ts +4 -1
  35. package/dist/server/infrastructure/llm/run-result-writer.d.ts.map +1 -1
  36. package/dist/server/infrastructure/llm/run-result-writer.js +66 -14
  37. package/dist/server/infrastructure/llm/run-result-writer.js.map +1 -1
  38. package/dist/server/modules/annotation/annotation.controller.d.ts +28 -13
  39. package/dist/server/modules/annotation/annotation.controller.d.ts.map +1 -1
  40. package/dist/server/modules/annotation/annotation.repository.d.ts +6 -2
  41. package/dist/server/modules/annotation/annotation.repository.d.ts.map +1 -1
  42. package/dist/server/modules/annotation/annotation.repository.js +340 -96
  43. package/dist/server/modules/annotation/annotation.repository.js.map +1 -1
  44. package/dist/server/modules/annotation/annotation.service.d.ts.map +1 -1
  45. package/dist/server/modules/annotation/annotation.service.js +62 -10
  46. package/dist/server/modules/annotation/annotation.service.js.map +1 -1
  47. package/dist/server/modules/canary-release/canary-release.controller.d.ts +63 -42
  48. package/dist/server/modules/canary-release/canary-release.controller.d.ts.map +1 -1
  49. package/dist/server/modules/canary-release/canary-release.repository.d.ts +23 -5
  50. package/dist/server/modules/canary-release/canary-release.repository.d.ts.map +1 -1
  51. package/dist/server/modules/canary-release/canary-release.repository.js +28 -12
  52. package/dist/server/modules/canary-release/canary-release.repository.js.map +1 -1
  53. package/dist/server/modules/canary-release/canary-release.service.d.ts.map +1 -1
  54. package/dist/server/modules/canary-release/canary-release.service.js +32 -10
  55. package/dist/server/modules/canary-release/canary-release.service.js.map +1 -1
  56. package/dist/server/modules/canary-release/canary-runtime.d.ts +11 -1
  57. package/dist/server/modules/canary-release/canary-runtime.d.ts.map +1 -1
  58. package/dist/server/modules/canary-release/canary-runtime.js +63 -8
  59. package/dist/server/modules/canary-release/canary-runtime.js.map +1 -1
  60. package/dist/server/modules/dataset/dataset-deletion.hook.d.ts +16 -0
  61. package/dist/server/modules/dataset/dataset-deletion.hook.d.ts.map +1 -0
  62. package/dist/server/modules/dataset/dataset-deletion.hook.js +57 -0
  63. package/dist/server/modules/dataset/dataset-deletion.hook.js.map +1 -0
  64. package/dist/server/modules/dataset/dataset-import.controller.d.ts +2 -0
  65. package/dist/server/modules/dataset/dataset-import.controller.d.ts.map +1 -1
  66. package/dist/server/modules/dataset/dataset-import.service.d.ts.map +1 -1
  67. package/dist/server/modules/dataset/dataset-import.service.js +7 -0
  68. package/dist/server/modules/dataset/dataset-import.service.js.map +1 -1
  69. package/dist/server/modules/dataset/dataset.controller.d.ts +98 -0
  70. package/dist/server/modules/dataset/dataset.controller.d.ts.map +1 -1
  71. package/dist/server/modules/dataset/dataset.controller.js +36 -0
  72. package/dist/server/modules/dataset/dataset.controller.js.map +1 -1
  73. package/dist/server/modules/dataset/dataset.module.d.ts.map +1 -1
  74. package/dist/server/modules/dataset/dataset.module.js +8 -1
  75. package/dist/server/modules/dataset/dataset.module.js.map +1 -1
  76. package/dist/server/modules/dataset/dataset.repository.d.ts +19 -0
  77. package/dist/server/modules/dataset/dataset.repository.d.ts.map +1 -1
  78. package/dist/server/modules/dataset/dataset.repository.js +248 -9
  79. package/dist/server/modules/dataset/dataset.repository.js.map +1 -1
  80. package/dist/server/modules/dataset/dataset.service.d.ts +45 -1
  81. package/dist/server/modules/dataset/dataset.service.d.ts.map +1 -1
  82. package/dist/server/modules/dataset/dataset.service.js +132 -7
  83. package/dist/server/modules/dataset/dataset.service.js.map +1 -1
  84. package/dist/server/modules/experiment/experiment.controller.d.ts +8 -8
  85. package/dist/server/modules/experiment/experiment.repository.d.ts.map +1 -1
  86. package/dist/server/modules/experiment/experiment.repository.js +28 -0
  87. package/dist/server/modules/experiment/experiment.repository.js.map +1 -1
  88. package/dist/server/modules/experiment/experiment.service.d.ts.map +1 -1
  89. package/dist/server/modules/experiment/experiment.service.js +6 -3
  90. package/dist/server/modules/experiment/experiment.service.js.map +1 -1
  91. package/dist/server/modules/model/model.service.d.ts +5 -1
  92. package/dist/server/modules/model/model.service.d.ts.map +1 -1
  93. package/dist/server/modules/model/model.service.js +65 -3
  94. package/dist/server/modules/model/model.service.js.map +1 -1
  95. package/dist/server/modules/model/project-model.controller.d.ts +5 -5
  96. package/dist/server/modules/monitoring/monitoring.repository.js +1 -1
  97. package/dist/server/modules/optimization/optimization.controller.d.ts +12 -12
  98. package/dist/server/modules/optimization/optimization.repository.d.ts +6 -0
  99. package/dist/server/modules/optimization/optimization.repository.d.ts.map +1 -1
  100. package/dist/server/modules/optimization/optimization.repository.js +96 -4
  101. package/dist/server/modules/optimization/optimization.repository.js.map +1 -1
  102. package/dist/server/modules/optimization/optimization.service.d.ts.map +1 -1
  103. package/dist/server/modules/optimization/optimization.service.js +13 -4
  104. package/dist/server/modules/optimization/optimization.service.js.map +1 -1
  105. package/dist/server/modules/optimization/optimization.workflow.js +1 -1
  106. package/dist/server/modules/optimization/optimization.workflow.js.map +1 -1
  107. package/dist/server/modules/production-release/production-release.controller.d.ts +12 -9
  108. package/dist/server/modules/production-release/production-release.controller.d.ts.map +1 -1
  109. package/dist/server/modules/production-release/production-release.repository.d.ts +2 -1
  110. package/dist/server/modules/production-release/production-release.repository.d.ts.map +1 -1
  111. package/dist/server/modules/production-release/production-release.repository.js +3 -1
  112. package/dist/server/modules/production-release/production-release.repository.js.map +1 -1
  113. package/dist/server/modules/production-release/production-release.service.d.ts.map +1 -1
  114. package/dist/server/modules/production-release/production-release.service.js +10 -1
  115. package/dist/server/modules/production-release/production-release.service.js.map +1 -1
  116. package/dist/server/modules/prompt/prompt-deletion.hook.d.ts +18 -0
  117. package/dist/server/modules/prompt/prompt-deletion.hook.d.ts.map +1 -0
  118. package/dist/server/modules/prompt/prompt-deletion.hook.js +69 -0
  119. package/dist/server/modules/prompt/prompt-deletion.hook.js.map +1 -0
  120. package/dist/server/modules/prompt/prompt.controller.d.ts +146 -38
  121. package/dist/server/modules/prompt/prompt.controller.d.ts.map +1 -1
  122. package/dist/server/modules/prompt/prompt.controller.js +24 -0
  123. package/dist/server/modules/prompt/prompt.controller.js.map +1 -1
  124. package/dist/server/modules/prompt/prompt.module.d.ts.map +1 -1
  125. package/dist/server/modules/prompt/prompt.module.js +7 -1
  126. package/dist/server/modules/prompt/prompt.module.js.map +1 -1
  127. package/dist/server/modules/prompt/prompt.repository.d.ts +33 -3
  128. package/dist/server/modules/prompt/prompt.repository.d.ts.map +1 -1
  129. package/dist/server/modules/prompt/prompt.repository.js +267 -39
  130. package/dist/server/modules/prompt/prompt.repository.js.map +1 -1
  131. package/dist/server/modules/prompt/prompt.service.d.ts +78 -6
  132. package/dist/server/modules/prompt/prompt.service.d.ts.map +1 -1
  133. package/dist/server/modules/prompt/prompt.service.js +79 -49
  134. package/dist/server/modules/prompt/prompt.service.js.map +1 -1
  135. package/dist/server/modules/quick-start/quick-start.controller.d.ts +1 -1
  136. package/dist/server/modules/quick-start/quick-start.service.d.ts +1 -1
  137. package/dist/server/modules/release-line/release-line-deletion.hook.d.ts +16 -0
  138. package/dist/server/modules/release-line/release-line-deletion.hook.d.ts.map +1 -0
  139. package/dist/server/modules/release-line/release-line-deletion.hook.js +60 -0
  140. package/dist/server/modules/release-line/release-line-deletion.hook.js.map +1 -0
  141. package/dist/server/modules/release-line/release-line.controller.d.ts +2503 -82
  142. package/dist/server/modules/release-line/release-line.controller.d.ts.map +1 -1
  143. package/dist/server/modules/release-line/release-line.controller.js +169 -0
  144. package/dist/server/modules/release-line/release-line.controller.js.map +1 -1
  145. package/dist/server/modules/release-line/release-line.module.d.ts.map +1 -1
  146. package/dist/server/modules/release-line/release-line.module.js +8 -1
  147. package/dist/server/modules/release-line/release-line.module.js.map +1 -1
  148. package/dist/server/modules/release-line/release-line.repository.d.ts +55 -3
  149. package/dist/server/modules/release-line/release-line.repository.d.ts.map +1 -1
  150. package/dist/server/modules/release-line/release-line.repository.js +797 -111
  151. package/dist/server/modules/release-line/release-line.repository.js.map +1 -1
  152. package/dist/server/modules/release-line/release-line.service.d.ts +25 -5
  153. package/dist/server/modules/release-line/release-line.service.d.ts.map +1 -1
  154. package/dist/server/modules/release-line/release-line.service.js +312 -4
  155. package/dist/server/modules/release-line/release-line.service.js.map +1 -1
  156. package/dist/server/modules/release-line/release-runner.repository.d.ts +2 -1
  157. package/dist/server/modules/release-line/release-runner.repository.d.ts.map +1 -1
  158. package/dist/server/modules/release-line/release-runner.repository.js +14 -10
  159. package/dist/server/modules/release-line/release-runner.repository.js.map +1 -1
  160. package/dist/server/modules/release-line/release-runner.service.d.ts +6 -2
  161. package/dist/server/modules/release-line/release-runner.service.d.ts.map +1 -1
  162. package/dist/server/modules/release-line/release-runner.service.js +138 -11
  163. package/dist/server/modules/release-line/release-runner.service.js.map +1 -1
  164. package/dist/server/modules/release-line/release-variable-mapping.d.ts +9 -0
  165. package/dist/server/modules/release-line/release-variable-mapping.d.ts.map +1 -0
  166. package/dist/server/modules/release-line/release-variable-mapping.js +83 -0
  167. package/dist/server/modules/release-line/release-variable-mapping.js.map +1 -0
  168. package/dist/server/modules/run-result/run-result.controller.d.ts +10 -7
  169. package/dist/server/modules/run-result/run-result.controller.d.ts.map +1 -1
  170. package/dist/server/modules/run-result/run-result.repository.d.ts.map +1 -1
  171. package/dist/server/modules/run-result/run-result.repository.js +43 -18
  172. package/dist/server/modules/run-result/run-result.repository.js.map +1 -1
  173. package/dist/webhook/channels/webhook/webhook.controller.d.ts +4 -0
  174. package/dist/webhook/channels/webhook/webhook.controller.d.ts.map +1 -1
  175. package/dist/webhook/channels/webhook/webhook.service.d.ts +2 -0
  176. package/dist/webhook/channels/webhook/webhook.service.d.ts.map +1 -1
  177. package/dist/webhook/channels/webhook/webhook.service.js +6 -0
  178. package/dist/webhook/channels/webhook/webhook.service.js.map +1 -1
  179. package/dist/worker/consumers/llm.consumer.d.ts +4 -1
  180. package/dist/worker/consumers/llm.consumer.d.ts.map +1 -1
  181. package/dist/worker/consumers/llm.consumer.js +41 -6
  182. package/dist/worker/consumers/llm.consumer.js.map +1 -1
  183. package/dist/worker/consumers/probe.consumer.d.ts +4 -1
  184. package/dist/worker/consumers/probe.consumer.d.ts.map +1 -1
  185. package/dist/worker/consumers/probe.consumer.js +35 -3
  186. package/dist/worker/consumers/probe.consumer.js.map +1 -1
  187. package/dist/worker/runners/llm-runner.d.ts +3 -1
  188. package/dist/worker/runners/llm-runner.d.ts.map +1 -1
  189. package/dist/worker/runners/llm-runner.js +110 -55
  190. package/dist/worker/runners/llm-runner.js.map +1 -1
  191. package/dist/worker/runners/probe-runner.d.ts +9 -2
  192. package/dist/worker/runners/probe-runner.d.ts.map +1 -1
  193. package/dist/worker/runners/probe-runner.js +46 -2
  194. package/dist/worker/runners/probe-runner.js.map +1 -1
  195. package/dist/worker/runners/run-result-writer.d.ts +4 -1
  196. package/dist/worker/runners/run-result-writer.d.ts.map +1 -1
  197. package/dist/worker/runners/run-result-writer.js +63 -13
  198. package/dist/worker/runners/run-result-writer.js.map +1 -1
  199. package/package.json +12 -12
@@ -9,6 +9,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.DatasetModule = void 0;
10
10
  const common_1 = require("@nestjs/common");
11
11
  const database_module_1 = require("../../../shared/database/database.module");
12
+ const dataset_deletion_hook_1 = require("./dataset-deletion.hook");
12
13
  const dataset_import_controller_1 = require("./dataset-import.controller");
13
14
  const dataset_import_repository_1 = require("./dataset-import.repository");
14
15
  const dataset_import_service_1 = require("./dataset-import.service");
@@ -22,7 +23,13 @@ exports.DatasetModule = DatasetModule = __decorate([
22
23
  (0, common_1.Module)({
23
24
  imports: [database_module_1.DatabaseModule],
24
25
  controllers: [dataset_controller_1.DatasetController, dataset_import_controller_1.DatasetImportController],
25
- providers: [dataset_repository_1.DatasetRepository, dataset_service_1.DatasetService, dataset_import_repository_1.DatasetImportRepository, dataset_import_service_1.DatasetImportService],
26
+ providers: [
27
+ dataset_repository_1.DatasetRepository,
28
+ { provide: dataset_deletion_hook_1.DatasetDeletionHook, useClass: dataset_deletion_hook_1.LocalDatasetDeletionHook },
29
+ dataset_service_1.DatasetService,
30
+ dataset_import_repository_1.DatasetImportRepository,
31
+ dataset_import_service_1.DatasetImportService,
32
+ ],
26
33
  exports: [dataset_service_1.DatasetService, dataset_import_service_1.DatasetImportService],
27
34
  })
28
35
  ], DatasetModule);
@@ -1 +1 @@
1
- {"version":3,"file":"dataset.module.js","sourceRoot":"","sources":["../../../../src/server/modules/dataset/dataset.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,8EAA0E;AAC1E,2EAAsE;AACtE,2EAAsE;AACtE,qEAAgE;AAChE,6DAAyD;AACzD,6DAAyD;AACzD,uDAAmD;AAQ5C,IAAM,aAAa,GAAnB,MAAM,aAAa;CAAG,CAAA;AAAhB,sCAAa;wBAAb,aAAa;IANzB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,gCAAc,CAAC;QACzB,WAAW,EAAE,CAAC,sCAAiB,EAAE,mDAAuB,CAAC;QACzD,SAAS,EAAE,CAAC,sCAAiB,EAAE,gCAAc,EAAE,mDAAuB,EAAE,6CAAoB,CAAC;QAC7F,OAAO,EAAE,CAAC,gCAAc,EAAE,6CAAoB,CAAC;KAChD,CAAC;GACW,aAAa,CAAG"}
1
+ {"version":3,"file":"dataset.module.js","sourceRoot":"","sources":["../../../../src/server/modules/dataset/dataset.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,8EAA0E;AAC1E,mEAAwF;AACxF,2EAAsE;AACtE,2EAAsE;AACtE,qEAAgE;AAChE,6DAAyD;AACzD,6DAAyD;AACzD,uDAAmD;AAc5C,IAAM,aAAa,GAAnB,MAAM,aAAa;CAAG,CAAA;AAAhB,sCAAa;wBAAb,aAAa;IAZzB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,gCAAc,CAAC;QACzB,WAAW,EAAE,CAAC,sCAAiB,EAAE,mDAAuB,CAAC;QACzD,SAAS,EAAE;YACT,sCAAiB;YACjB,EAAE,OAAO,EAAE,2CAAmB,EAAE,QAAQ,EAAE,gDAAwB,EAAE;YACpE,gCAAc;YACd,mDAAuB;YACvB,6CAAoB;SACrB;QACD,OAAO,EAAE,CAAC,gCAAc,EAAE,6CAAoB,CAAC;KAChD,CAAC;GACW,aAAa,CAAG"}
@@ -7,6 +7,7 @@ export interface DatasetRow {
7
7
  id: string;
8
8
  projectId: string;
9
9
  name: string;
10
+ status: string;
10
11
  description: string | null;
11
12
  sampleCount: number;
12
13
  fieldSchema: unknown;
@@ -16,6 +17,7 @@ export interface DatasetRow {
16
17
  createdByDisplayName?: string | null;
17
18
  createdAt: Date;
18
19
  updatedAt: Date;
20
+ archivedAt: Date | null;
19
21
  deletedAt: Date | null;
20
22
  }
21
23
  export interface DatasetSampleRow {
@@ -40,6 +42,20 @@ export interface UpdateDatasetMetadataArgs {
40
42
  name: string;
41
43
  description: string | null;
42
44
  }
45
+ export interface DatasetDeletionImpactRow {
46
+ id: string;
47
+ name: string | null;
48
+ status: string | null;
49
+ datasetId: string | null;
50
+ promptId: string | null;
51
+ promptVersionId: string | null;
52
+ promptVersionNumber: number | null;
53
+ createdAt: Date | null;
54
+ }
55
+ export interface DatasetDeletionImpactRows {
56
+ experiments: DatasetDeletionImpactRow[];
57
+ optimizations: DatasetDeletionImpactRow[];
58
+ }
43
59
  export declare class DatasetRepository {
44
60
  private readonly db;
45
61
  constructor(db: DbClient);
@@ -48,6 +64,8 @@ export declare class DatasetRepository {
48
64
  findDatasetByProjectAndName(projectId: string, name: string): Promise<DatasetRow | null>;
49
65
  listDatasets(projectId: string): Promise<DatasetRow[]>;
50
66
  findDatasetById(projectId: string, datasetId: string): Promise<DatasetRow | null>;
67
+ archiveDataset(projectId: string, datasetId: string): Promise<void>;
68
+ restoreDataset(projectId: string, datasetId: string): Promise<void>;
51
69
  listDatasetSamples(datasetId: string): Promise<DatasetSampleRow[]>;
52
70
  listDatasetSamplesPage(datasetId: string, options: {
53
71
  limit: number;
@@ -62,6 +80,7 @@ export declare class DatasetRepository {
62
80
  count: number;
63
81
  }>>;
64
82
  hardDeleteDataset(projectId: string, datasetId: string): Promise<number>;
83
+ listDeletionImpact(projectId: string, datasetId: string): Promise<DatasetDeletionImpactRows>;
65
84
  updateDatasetMetadata(projectId: string, datasetId: string, args: UpdateDatasetMetadataArgs): Promise<DatasetRow | null>;
66
85
  countDatasetReferences(datasetIds: string[]): Promise<Map<string, {
67
86
  experiments: number;
@@ -1 +1 @@
1
- {"version":3,"file":"dataset.repository.d.ts","sourceRoot":"","sources":["../../../../src/server/modules/dataset/dataset.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dataset.repository.d.ts","sourceRoot":"","sources":["../../../../src/server/modules/dataset/dataset.repository.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,7 @@ const common_1 = require("@nestjs/common");
17
17
  const drizzle_orm_1 = require("drizzle-orm");
18
18
  const db_1 = require("@proofhound/db");
19
19
  const database_constants_1 = require("../../../shared/database/database.constants");
20
- const { optimizations, datasetSamples, datasets, experiments, projects, prompts } = db_1.schema;
20
+ const { optimizations, datasetSamples, datasets, experiments, projects, promptVersions } = db_1.schema;
21
21
  let DatasetRepository = class DatasetRepository {
22
22
  constructor(db) {
23
23
  this.db = db;
@@ -25,6 +25,7 @@ let DatasetRepository = class DatasetRepository {
25
25
  id: datasets.id,
26
26
  projectId: datasets.projectId,
27
27
  name: datasets.name,
28
+ status: datasets.status,
28
29
  description: datasets.description,
29
30
  sampleCount: datasets.sampleCount,
30
31
  fieldSchema: datasets.fieldSchema,
@@ -34,6 +35,7 @@ let DatasetRepository = class DatasetRepository {
34
35
  createdByDisplayName: (0, drizzle_orm_1.sql) `NULL`,
35
36
  createdAt: datasets.createdAt,
36
37
  updatedAt: datasets.updatedAt,
38
+ archivedAt: datasets.archivedAt,
37
39
  deletedAt: datasets.deletedAt,
38
40
  };
39
41
  }
@@ -68,6 +70,19 @@ let DatasetRepository = class DatasetRepository {
68
70
  .limit(1);
69
71
  return rows[0] ?? null;
70
72
  }
73
+ async archiveDataset(projectId, datasetId) {
74
+ const now = new Date();
75
+ await this.db
76
+ .update(datasets)
77
+ .set({ status: 'archived', archivedAt: now, updatedAt: now })
78
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(datasets.projectId, projectId), (0, drizzle_orm_1.eq)(datasets.id, datasetId), (0, drizzle_orm_1.isNull)(datasets.deletedAt)));
79
+ }
80
+ async restoreDataset(projectId, datasetId) {
81
+ await this.db
82
+ .update(datasets)
83
+ .set({ status: 'active', archivedAt: null, updatedAt: new Date() })
84
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(datasets.projectId, projectId), (0, drizzle_orm_1.eq)(datasets.id, datasetId), (0, drizzle_orm_1.isNull)(datasets.deletedAt)));
85
+ }
71
86
  // Full scan — only for export (complete dump). Detail browsing must use listDatasetSamplesPage.
72
87
  async listDatasetSamples(datasetId) {
73
88
  return this.db
@@ -91,7 +106,10 @@ let DatasetRepository = class DatasetRepository {
91
106
  .orderBy((0, drizzle_orm_1.asc)(datasetSamples.createdAt), (0, drizzle_orm_1.asc)(datasetSamples.id))
92
107
  .limit(options.limit)
93
108
  .offset(options.offset),
94
- this.db.select({ count: (0, drizzle_orm_1.sql) `count(*)::int` }).from(datasetSamples).where(where),
109
+ this.db
110
+ .select({ count: (0, drizzle_orm_1.sql) `count(*)::int` })
111
+ .from(datasetSamples)
112
+ .where(where),
95
113
  ]);
96
114
  return { rows, total: Number(countResult[0]?.count ?? 0) };
97
115
  }
@@ -110,13 +128,201 @@ let DatasetRepository = class DatasetRepository {
110
128
  }
111
129
  async hardDeleteDataset(projectId, datasetId) {
112
130
  return this.db.transaction(async (tx) => {
113
- await tx
114
- .update(prompts)
115
- .set({
116
- defaultDatasetId: null,
117
- updatedAt: new Date(),
118
- })
119
- .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(prompts.projectId, projectId), (0, drizzle_orm_1.eq)(prompts.defaultDatasetId, datasetId)));
131
+ await tx.execute((0, drizzle_orm_1.sql) `
132
+ WITH target_optimizations AS (
133
+ SELECT id
134
+ FROM ph_runs.optimizations
135
+ WHERE project_id = ${projectId}::uuid
136
+ AND dataset_id = ${datasetId}::uuid
137
+ AND deleted_at IS NULL
138
+ ),
139
+ target_experiments AS (
140
+ SELECT DISTINCT e.id
141
+ FROM ph_runs.experiments e
142
+ WHERE e.project_id = ${projectId}::uuid
143
+ AND e.deleted_at IS NULL
144
+ AND (
145
+ e.dataset_id = ${datasetId}::uuid
146
+ OR e.optimization_id IN (SELECT id FROM target_optimizations)
147
+ )
148
+ ),
149
+ target_run_results AS (
150
+ SELECT rr.id, rr.created_at
151
+ FROM ph_runs.run_results rr
152
+ WHERE (
153
+ rr.source = 'experiment'
154
+ AND rr.source_id IN (SELECT id FROM target_experiments)
155
+ )
156
+ OR (
157
+ rr.source IN ('optimization_analysis', 'optimization_generate')
158
+ AND rr.source_id IN (SELECT id FROM target_optimizations)
159
+ )
160
+ )
161
+ DELETE FROM ph_runs.annotations annotation
162
+ USING target_run_results rr
163
+ WHERE annotation.run_result_id = rr.id
164
+ AND annotation.run_result_created_at = rr.created_at
165
+ `);
166
+ await tx.execute((0, drizzle_orm_1.sql) `
167
+ WITH target_optimizations AS (
168
+ SELECT id
169
+ FROM ph_runs.optimizations
170
+ WHERE project_id = ${projectId}::uuid
171
+ AND dataset_id = ${datasetId}::uuid
172
+ AND deleted_at IS NULL
173
+ ),
174
+ target_experiments AS (
175
+ SELECT DISTINCT e.id
176
+ FROM ph_runs.experiments e
177
+ WHERE e.project_id = ${projectId}::uuid
178
+ AND e.deleted_at IS NULL
179
+ AND (
180
+ e.dataset_id = ${datasetId}::uuid
181
+ OR e.optimization_id IN (SELECT id FROM target_optimizations)
182
+ )
183
+ ),
184
+ target_run_results AS (
185
+ SELECT rr.id, rr.created_at
186
+ FROM ph_runs.run_results rr
187
+ WHERE (
188
+ rr.source = 'experiment'
189
+ AND rr.source_id IN (SELECT id FROM target_experiments)
190
+ )
191
+ OR (
192
+ rr.source IN ('optimization_analysis', 'optimization_generate')
193
+ AND rr.source_id IN (SELECT id FROM target_optimizations)
194
+ )
195
+ )
196
+ DELETE FROM ph_runs.run_results rr
197
+ USING target_run_results target
198
+ WHERE rr.id = target.id
199
+ AND rr.created_at = target.created_at
200
+ `);
201
+ await tx.execute((0, drizzle_orm_1.sql) `
202
+ WITH target_optimizations AS (
203
+ SELECT id
204
+ FROM ph_runs.optimizations
205
+ WHERE project_id = ${projectId}::uuid
206
+ AND dataset_id = ${datasetId}::uuid
207
+ AND deleted_at IS NULL
208
+ ),
209
+ target_experiments AS (
210
+ SELECT DISTINCT e.id
211
+ FROM ph_runs.experiments e
212
+ WHERE e.project_id = ${projectId}::uuid
213
+ AND e.deleted_at IS NULL
214
+ AND (
215
+ e.dataset_id = ${datasetId}::uuid
216
+ OR e.optimization_id IN (SELECT id FROM target_optimizations)
217
+ )
218
+ )
219
+ UPDATE ph_releases.release_line_events event
220
+ SET source_experiment_id = NULL,
221
+ updated_at = now()
222
+ WHERE event.project_id = ${projectId}::uuid
223
+ AND event.source_experiment_id IN (SELECT id FROM target_experiments)
224
+ `);
225
+ await tx.execute((0, drizzle_orm_1.sql) `
226
+ WITH target_optimizations AS (
227
+ SELECT id
228
+ FROM ph_runs.optimizations
229
+ WHERE project_id = ${projectId}::uuid
230
+ AND dataset_id = ${datasetId}::uuid
231
+ AND deleted_at IS NULL
232
+ ),
233
+ target_experiments AS (
234
+ SELECT DISTINCT e.id
235
+ FROM ph_runs.experiments e
236
+ WHERE e.project_id = ${projectId}::uuid
237
+ AND e.deleted_at IS NULL
238
+ AND (
239
+ e.dataset_id = ${datasetId}::uuid
240
+ OR e.optimization_id IN (SELECT id FROM target_optimizations)
241
+ )
242
+ )
243
+ UPDATE ph_releases.production_release_events event
244
+ SET source_experiment_id = NULL,
245
+ updated_at = now()
246
+ WHERE event.project_id = ${projectId}::uuid
247
+ AND event.source_experiment_id IN (SELECT id FROM target_experiments)
248
+ `);
249
+ await tx.execute((0, drizzle_orm_1.sql) `
250
+ WITH target_optimizations AS (
251
+ SELECT id
252
+ FROM ph_runs.optimizations
253
+ WHERE project_id = ${projectId}::uuid
254
+ AND dataset_id = ${datasetId}::uuid
255
+ AND deleted_at IS NULL
256
+ ),
257
+ target_experiments AS (
258
+ SELECT DISTINCT e.id
259
+ FROM ph_runs.experiments e
260
+ WHERE e.project_id = ${projectId}::uuid
261
+ AND e.deleted_at IS NULL
262
+ AND (
263
+ e.dataset_id = ${datasetId}::uuid
264
+ OR e.optimization_id IN (SELECT id FROM target_optimizations)
265
+ )
266
+ )
267
+ UPDATE ph_runs.optimizations optimization
268
+ SET source_experiment_id = NULL,
269
+ updated_at = now()
270
+ WHERE optimization.project_id = ${projectId}::uuid
271
+ AND optimization.source_experiment_id IN (SELECT id FROM target_experiments)
272
+ `);
273
+ await tx.execute((0, drizzle_orm_1.sql) `
274
+ WITH target_optimizations AS (
275
+ SELECT id
276
+ FROM ph_runs.optimizations
277
+ WHERE project_id = ${projectId}::uuid
278
+ AND dataset_id = ${datasetId}::uuid
279
+ AND deleted_at IS NULL
280
+ ),
281
+ target_experiments AS (
282
+ SELECT DISTINCT e.id
283
+ FROM ph_runs.experiments e
284
+ WHERE e.project_id = ${projectId}::uuid
285
+ AND e.deleted_at IS NULL
286
+ AND (
287
+ e.dataset_id = ${datasetId}::uuid
288
+ OR e.optimization_id IN (SELECT id FROM target_optimizations)
289
+ )
290
+ )
291
+ DELETE FROM ph_runs.experiments experiment
292
+ USING target_experiments target
293
+ WHERE experiment.id = target.id
294
+ `);
295
+ await tx.execute((0, drizzle_orm_1.sql) `
296
+ WITH target_optimizations AS (
297
+ SELECT id
298
+ FROM ph_runs.optimizations
299
+ WHERE project_id = ${projectId}::uuid
300
+ AND dataset_id = ${datasetId}::uuid
301
+ AND deleted_at IS NULL
302
+ )
303
+ DELETE FROM ph_runs.optimization_round_steps step
304
+ USING target_optimizations target
305
+ WHERE step.optimization_id = target.id
306
+ `);
307
+ await tx.execute((0, drizzle_orm_1.sql) `
308
+ WITH target_optimizations AS (
309
+ SELECT id
310
+ FROM ph_runs.optimizations
311
+ WHERE project_id = ${projectId}::uuid
312
+ AND dataset_id = ${datasetId}::uuid
313
+ AND deleted_at IS NULL
314
+ )
315
+ DELETE FROM ph_runs.optimizations optimization
316
+ USING target_optimizations target
317
+ WHERE optimization.id = target.id
318
+ `);
319
+ await tx.execute((0, drizzle_orm_1.sql) `
320
+ UPDATE ph_assets.prompts
321
+ SET default_dataset_id = NULL,
322
+ updated_at = now()
323
+ WHERE project_id = ${projectId}::uuid
324
+ AND default_dataset_id = ${datasetId}::uuid
325
+ `);
120
326
  const deleted = await tx
121
327
  .delete(datasets)
122
328
  .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(datasets.projectId, projectId), (0, drizzle_orm_1.eq)(datasets.id, datasetId), (0, drizzle_orm_1.isNull)(datasets.deletedAt)))
@@ -124,6 +330,39 @@ let DatasetRepository = class DatasetRepository {
124
330
  return deleted.length;
125
331
  });
126
332
  }
333
+ async listDeletionImpact(projectId, datasetId) {
334
+ const experimentRows = await this.db
335
+ .select({
336
+ id: experiments.id,
337
+ name: experiments.name,
338
+ status: experiments.status,
339
+ datasetId: experiments.datasetId,
340
+ promptId: promptVersions.promptId,
341
+ promptVersionId: experiments.promptVersionId,
342
+ promptVersionNumber: promptVersions.versionNumber,
343
+ createdAt: experiments.createdAt,
344
+ })
345
+ .from(experiments)
346
+ .leftJoin(promptVersions, (0, drizzle_orm_1.eq)(promptVersions.id, experiments.promptVersionId))
347
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(experiments.projectId, projectId), (0, drizzle_orm_1.eq)(experiments.datasetId, datasetId), (0, drizzle_orm_1.isNull)(experiments.deletedAt)));
348
+ const optimizationRows = await this.db
349
+ .select({
350
+ id: optimizations.id,
351
+ name: optimizations.name,
352
+ status: optimizations.status,
353
+ datasetId: optimizations.datasetId,
354
+ promptId: optimizations.promptId,
355
+ promptVersionId: (0, drizzle_orm_1.sql) `COALESCE(${optimizations.baseVersionId}, ${optimizations.bestVersionId})`,
356
+ promptVersionNumber: (0, drizzle_orm_1.sql) `NULL`,
357
+ createdAt: optimizations.createdAt,
358
+ })
359
+ .from(optimizations)
360
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(optimizations.projectId, projectId), (0, drizzle_orm_1.eq)(optimizations.datasetId, datasetId), (0, drizzle_orm_1.isNull)(optimizations.deletedAt)));
361
+ return {
362
+ experiments: experimentRows,
363
+ optimizations: optimizationRows,
364
+ };
365
+ }
127
366
  async updateDatasetMetadata(projectId, datasetId, args) {
128
367
  await this.db
129
368
  .update(datasets)
@@ -1 +1 @@
1
- {"version":3,"file":"dataset.repository.js","sourceRoot":"","sources":["../../../../src/server/modules/dataset/dataset.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dataset.repository.js","sourceRoot":"","sources":["../../../../src/server/modules/dataset/dataset.repository.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,8 @@ import type { CreateDatasetDto, DatasetCreateResponseDto, DatasetExportFormatDto
3
3
  import type { CurrentUserPayload } from '../../common/decorators/current-user.decorator';
4
4
  import { AccessControlService } from '../../common/contracts/access-control.service';
5
5
  import { QuotaPolicyHook } from '../../common/contracts/quota-policy.hook';
6
+ import { UsageMeteringHook } from '../../common/contracts/usage-metering.hook';
7
+ import { DatasetDeletionHook } from './dataset-deletion.hook';
6
8
  import { DatasetRepository } from './dataset.repository';
7
9
  export interface DatasetExportFile {
8
10
  fileName: string;
@@ -15,7 +17,10 @@ export declare class DatasetService {
15
17
  private readonly repo;
16
18
  private readonly accessControl;
17
19
  private readonly quotaPolicy;
18
- constructor(repo: DatasetRepository, accessControl: AccessControlService, quotaPolicy: QuotaPolicyHook);
20
+ private readonly deletionHook;
21
+ private readonly usageMetering?;
22
+ private readonly logger;
23
+ constructor(repo: DatasetRepository, accessControl: AccessControlService, quotaPolicy: QuotaPolicyHook, deletionHook: DatasetDeletionHook, usageMetering?: UsageMeteringHook | undefined);
19
24
  listDatasets(projectId: string, actor: CurrentUserPayload): Promise<{
20
25
  data: DatasetListItemDto[];
21
26
  total: number;
@@ -26,11 +31,50 @@ export declare class DatasetService {
26
31
  createDataset(projectId: string, dto: CreateDatasetDto, actor: CurrentUserPayload): Promise<DatasetCreateResponseDto>;
27
32
  deleteDatasetSamples(projectId: string, datasetId: string, dto: DeleteDatasetSamplesDto, actor: CurrentUserPayload): Promise<DeleteDatasetSamplesResponseDto>;
28
33
  updateDatasetMetadata(projectId: string, datasetId: string, dto: UpdateDatasetMetadataDto, actor: CurrentUserPayload): Promise<DatasetListItemDto>;
34
+ getDatasetDeleteImpact(projectId: string, datasetId: string, actor: CurrentUserPayload): Promise<{
35
+ datasetId: string;
36
+ experiments: {
37
+ id: string;
38
+ kind: "experiment" | "optimization";
39
+ name: string | null;
40
+ status: string | null;
41
+ datasetId: string | null;
42
+ promptId: string | null;
43
+ promptVersionId: string | null;
44
+ promptVersionNumber: number | null;
45
+ createdAt: string | null;
46
+ }[];
47
+ optimizations: {
48
+ id: string;
49
+ kind: "experiment" | "optimization";
50
+ name: string | null;
51
+ status: string | null;
52
+ datasetId: string | null;
53
+ promptId: string | null;
54
+ promptVersionId: string | null;
55
+ promptVersionNumber: number | null;
56
+ createdAt: string | null;
57
+ }[];
58
+ total: number;
59
+ }>;
60
+ archiveDataset(projectId: string, datasetId: string, actor: CurrentUserPayload): Promise<DatasetListItemDto>;
61
+ restoreDataset(projectId: string, datasetId: string, actor: CurrentUserPayload): Promise<DatasetListItemDto>;
29
62
  deleteDataset(projectId: string, datasetId: string, actor: CurrentUserPayload): Promise<void>;
63
+ recordDatasetImportCompleted(input: {
64
+ projectId: string;
65
+ datasetId: string;
66
+ importId: string;
67
+ actorId: string;
68
+ sampleCount: number;
69
+ }): Promise<void>;
30
70
  private getAccessibleProject;
31
71
  private getWritableProject;
72
+ private recordDatasetStorageEvents;
73
+ private recordStorageEvent;
32
74
  private assertConsistentMappings;
33
75
  private toDatasetListItem;
76
+ private toDatasetStatus;
77
+ private assertDatasetActive;
34
78
  private emptyReferences;
35
79
  private getCategoryDistributions;
36
80
  private getCategoryDistribution;
@@ -1 +1 @@
1
- {"version":3,"file":"dataset.service.d.ts","sourceRoot":"","sources":["../../../../src/server/modules/dataset/dataset.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dataset.service.d.ts","sourceRoot":"","sources":["../../../../src/server/modules/dataset/dataset.service.ts"],"names":[],"mappings":"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"}