@sealkeeper/schema 0.4.6 → 0.4.8

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 (90) hide show
  1. package/README.md +2 -2
  2. package/dist/api.d.ts +787 -35
  3. package/dist/api.js +357 -44
  4. package/dist/conformance.d.ts +4 -0
  5. package/dist/conformance.js +7 -0
  6. package/dist/credential.d.ts +196 -27
  7. package/dist/credential.js +128 -80
  8. package/dist/dimensions.d.ts +16 -3
  9. package/dist/dimensions.js +48 -2
  10. package/dist/events.d.ts +1 -0
  11. package/dist/events.js +13 -1
  12. package/dist/fingerprint-conformance.d.ts +17 -0
  13. package/dist/fingerprint-conformance.js +83 -0
  14. package/dist/fingerprint.d.ts +132 -0
  15. package/dist/fingerprint.js +166 -0
  16. package/dist/goal.d.ts +16 -1
  17. package/dist/goal.js +29 -6
  18. package/dist/handshake-conformance.d.ts +18 -0
  19. package/dist/handshake-conformance.js +276 -0
  20. package/dist/handshake.d.ts +66 -0
  21. package/dist/handshake.js +187 -0
  22. package/dist/hidden.d.ts +1 -0
  23. package/dist/hidden.js +5 -0
  24. package/dist/index.d.ts +4 -1
  25. package/dist/index.js +4 -1
  26. package/dist/moderation.js +1 -4
  27. package/dist/policy.d.ts +1 -1
  28. package/dist/policy.js +1 -1
  29. package/dist/seal-conformance.js +148 -4
  30. package/dist/seal-verify.d.ts +21 -0
  31. package/dist/seal-verify.js +63 -0
  32. package/dist/standing.d.ts +61 -0
  33. package/dist/standing.js +132 -4
  34. package/dist/task-templates.d.ts +46 -0
  35. package/dist/task-templates.js +501 -0
  36. package/dist/tasks.d.ts +43 -0
  37. package/dist/tasks.js +103 -0
  38. package/dist/template-conformance.d.ts +10 -0
  39. package/dist/template-conformance.js +298 -0
  40. package/dist/top-dimensions.d.ts +3 -3
  41. package/dist/top-dimensions.js +12 -6
  42. package/package.json +4 -8
  43. package/dist/db/agent-milestones.d.ts +0 -75
  44. package/dist/db/agent-milestones.js +0 -16
  45. package/dist/db/agent-renames.d.ts +0 -126
  46. package/dist/db/agent-renames.js +0 -20
  47. package/dist/db/agents.d.ts +0 -351
  48. package/dist/db/agents.js +0 -99
  49. package/dist/db/client.d.ts +0 -2561
  50. package/dist/db/client.js +0 -61
  51. package/dist/db/credentials.d.ts +0 -143
  52. package/dist/db/credentials.js +0 -16
  53. package/dist/db/deleted-operators.d.ts +0 -75
  54. package/dist/db/deleted-operators.js +0 -13
  55. package/dist/db/events.d.ts +0 -160
  56. package/dist/db/events.js +0 -41
  57. package/dist/db/feed-items.d.ts +0 -109
  58. package/dist/db/feed-items.js +0 -21
  59. package/dist/db/index.d.ts +0 -76
  60. package/dist/db/index.js +0 -28
  61. package/dist/db/migrate.d.ts +0 -1
  62. package/dist/db/migrate.js +0 -34
  63. package/dist/db/migrator.d.ts +0 -6
  64. package/dist/db/migrator.js +0 -36
  65. package/dist/db/operator-identities.d.ts +0 -211
  66. package/dist/db/operator-identities.js +0 -49
  67. package/dist/db/operator-level-grants.d.ts +0 -109
  68. package/dist/db/operator-level-grants.js +0 -30
  69. package/dist/db/operator-slugs.d.ts +0 -92
  70. package/dist/db/operator-slugs.js +0 -25
  71. package/dist/db/operators.d.ts +0 -228
  72. package/dist/db/operators.js +0 -39
  73. package/dist/db/quota-counters.d.ts +0 -109
  74. package/dist/db/quota-counters.js +0 -17
  75. package/dist/db/ratings.d.ts +0 -160
  76. package/dist/db/ratings.js +0 -27
  77. package/dist/db/scores.d.ts +0 -160
  78. package/dist/db/scores.js +0 -15
  79. package/dist/db/standing.d.ts +0 -264
  80. package/dist/db/standing.js +0 -34
  81. package/dist/db/task-claim-failures.d.ts +0 -143
  82. package/dist/db/task-claim-failures.js +0 -37
  83. package/dist/db/task-outcomes.d.ts +0 -145
  84. package/dist/db/task-outcomes.js +0 -25
  85. package/dist/db/tasks.d.ts +0 -381
  86. package/dist/db/tasks.js +0 -106
  87. package/dist/db/timestamps.d.ts +0 -4
  88. package/dist/db/timestamps.js +0 -24
  89. package/dist/db/url.d.ts +0 -12
  90. package/dist/db/url.js +0 -25
@@ -1,27 +0,0 @@
1
- import { sql } from 'drizzle-orm';
2
- import { check, integer, pgTable, real, text, timestamp, unique, uuid, } from 'drizzle-orm/pg-core';
3
- import { agents } from './agents.js';
4
- import { timestamps } from './timestamps.js';
5
- export const ratings = pgTable('ratings', {
6
- id: uuid('id').primaryKey(),
7
- raterAgentId: text('rater_agent_id')
8
- .notNull()
9
- .references(() => agents.id),
10
- rateeAgentId: text('ratee_agent_id')
11
- .notNull()
12
- .references(() => agents.id),
13
- dimension: text('dimension').notNull(),
14
- value: integer('value').notNull(),
15
- raterScoreAtTime: real('rater_score_at_time').notNull(),
16
- // The signed issuedAt of the rating that wrote the row. A rating only
17
- // replaces the row when it was issued later, so a replayed envelope
18
- // changes nothing.
19
- issuedAt: timestamp('issued_at', { withTimezone: true }).notNull(),
20
- ...timestamps,
21
- }, (t) => [
22
- unique('ratings_rater_ratee_dimension_unique').on(t.raterAgentId, t.rateeAgentId, t.dimension),
23
- // Scoring maps value to (value - 1) / 4 and weights it by the rater
24
- // score, so a row outside these ranges would push a score past 1.
25
- check('ratings_value_range', sql `${t.value} between 1 and 5`),
26
- check('ratings_rater_score_range', sql `${t.raterScoreAtTime} between 0 and 1`),
27
- ]);
@@ -1,160 +0,0 @@
1
- export declare const scores: import("drizzle-orm/pg-core").PgTableWithColumns<{
2
- name: "scores";
3
- schema: undefined;
4
- columns: {
5
- createdAt: import("drizzle-orm/pg-core").PgColumn<{
6
- name: "created_at";
7
- tableName: "scores";
8
- dataType: "date";
9
- columnType: "PgTimestamp";
10
- data: Date;
11
- driverParam: string;
12
- notNull: true;
13
- hasDefault: true;
14
- isPrimaryKey: false;
15
- isAutoincrement: false;
16
- hasRuntimeDefault: false;
17
- enumValues: undefined;
18
- baseColumn: never;
19
- identity: undefined;
20
- generated: undefined;
21
- }, {}, {}>;
22
- updatedAt: import("drizzle-orm/pg-core").PgColumn<{
23
- name: "updated_at";
24
- tableName: "scores";
25
- dataType: "date";
26
- columnType: "PgTimestamp";
27
- data: Date;
28
- driverParam: string;
29
- notNull: true;
30
- hasDefault: true;
31
- isPrimaryKey: false;
32
- isAutoincrement: false;
33
- hasRuntimeDefault: false;
34
- enumValues: undefined;
35
- baseColumn: never;
36
- identity: undefined;
37
- generated: undefined;
38
- }, {}, {}>;
39
- agentId: import("drizzle-orm/pg-core").PgColumn<{
40
- name: "agent_id";
41
- tableName: "scores";
42
- dataType: "string";
43
- columnType: "PgText";
44
- data: string;
45
- driverParam: string;
46
- notNull: true;
47
- hasDefault: false;
48
- isPrimaryKey: false;
49
- isAutoincrement: false;
50
- hasRuntimeDefault: false;
51
- enumValues: [string, ...string[]];
52
- baseColumn: never;
53
- identity: undefined;
54
- generated: undefined;
55
- }, {}, {}>;
56
- version: import("drizzle-orm/pg-core").PgColumn<{
57
- name: "version";
58
- tableName: "scores";
59
- dataType: "string";
60
- columnType: "PgText";
61
- data: string;
62
- driverParam: string;
63
- notNull: true;
64
- hasDefault: false;
65
- isPrimaryKey: false;
66
- isAutoincrement: false;
67
- hasRuntimeDefault: false;
68
- enumValues: [string, ...string[]];
69
- baseColumn: never;
70
- identity: undefined;
71
- generated: undefined;
72
- }, {}, {}>;
73
- dimension: import("drizzle-orm/pg-core").PgColumn<{
74
- name: "dimension";
75
- tableName: "scores";
76
- dataType: "string";
77
- columnType: "PgText";
78
- data: string;
79
- driverParam: string;
80
- notNull: true;
81
- hasDefault: false;
82
- isPrimaryKey: false;
83
- isAutoincrement: false;
84
- hasRuntimeDefault: false;
85
- enumValues: [string, ...string[]];
86
- baseColumn: never;
87
- identity: undefined;
88
- generated: undefined;
89
- }, {}, {}>;
90
- value: import("drizzle-orm/pg-core").PgColumn<{
91
- name: "value";
92
- tableName: "scores";
93
- dataType: "number";
94
- columnType: "PgReal";
95
- data: number;
96
- driverParam: string | number;
97
- notNull: false;
98
- hasDefault: false;
99
- isPrimaryKey: false;
100
- isAutoincrement: false;
101
- hasRuntimeDefault: false;
102
- enumValues: undefined;
103
- baseColumn: never;
104
- identity: undefined;
105
- generated: undefined;
106
- }, {}, {}>;
107
- windowStart: import("drizzle-orm/pg-core").PgColumn<{
108
- name: "window_start";
109
- tableName: "scores";
110
- dataType: "date";
111
- columnType: "PgTimestamp";
112
- data: Date;
113
- driverParam: string;
114
- notNull: true;
115
- hasDefault: false;
116
- isPrimaryKey: false;
117
- isAutoincrement: false;
118
- hasRuntimeDefault: false;
119
- enumValues: undefined;
120
- baseColumn: never;
121
- identity: undefined;
122
- generated: undefined;
123
- }, {}, {}>;
124
- windowEnd: import("drizzle-orm/pg-core").PgColumn<{
125
- name: "window_end";
126
- tableName: "scores";
127
- dataType: "date";
128
- columnType: "PgTimestamp";
129
- data: Date;
130
- driverParam: string;
131
- notNull: true;
132
- hasDefault: false;
133
- isPrimaryKey: false;
134
- isAutoincrement: false;
135
- hasRuntimeDefault: false;
136
- enumValues: undefined;
137
- baseColumn: never;
138
- identity: undefined;
139
- generated: undefined;
140
- }, {}, {}>;
141
- computedAt: import("drizzle-orm/pg-core").PgColumn<{
142
- name: "computed_at";
143
- tableName: "scores";
144
- dataType: "date";
145
- columnType: "PgTimestamp";
146
- data: Date;
147
- driverParam: string;
148
- notNull: true;
149
- hasDefault: false;
150
- isPrimaryKey: false;
151
- isAutoincrement: false;
152
- hasRuntimeDefault: false;
153
- enumValues: undefined;
154
- baseColumn: never;
155
- identity: undefined;
156
- generated: undefined;
157
- }, {}, {}>;
158
- };
159
- dialect: 'pg';
160
- }>;
package/dist/db/scores.js DELETED
@@ -1,15 +0,0 @@
1
- import { pgTable, primaryKey, real, text, timestamp, } from 'drizzle-orm/pg-core';
2
- import { agents } from './agents.js';
3
- import { timestamps } from './timestamps.js';
4
- export const scores = pgTable('scores', {
5
- agentId: text('agent_id')
6
- .notNull()
7
- .references(() => agents.id),
8
- version: text('version').notNull(),
9
- dimension: text('dimension').notNull(),
10
- value: real('value'),
11
- windowStart: timestamp('window_start', { withTimezone: true }).notNull(),
12
- windowEnd: timestamp('window_end', { withTimezone: true }).notNull(),
13
- computedAt: timestamp('computed_at', { withTimezone: true }).notNull(),
14
- ...timestamps,
15
- }, (t) => [primaryKey({ columns: [t.agentId, t.version, t.dimension] })]);
@@ -1,264 +0,0 @@
1
- export type StoredCounts = {
2
- events: number;
3
- history_days: number;
4
- verified_tasks: number;
5
- seed_tasks: number;
6
- server_checked_tasks: number;
7
- confirmed_tasks: number;
8
- distinct_operators: number;
9
- safety_incidents_90d: number;
10
- confirmed_operators: number;
11
- history_span_days: number;
12
- safety_incidents_180d: number;
13
- clean_days: number;
14
- gold_confirmed_tasks: number;
15
- gold_confirmed_operators: number;
16
- counted_verified_tasks: number;
17
- counted_seed_tasks: number;
18
- counted_server_checked_tasks: number;
19
- counted_confirmed_tasks: number;
20
- counted_gold_confirmed_tasks: number;
21
- };
22
- export type StoredLevelInputs = {
23
- reliability: number | null;
24
- safety: number | null;
25
- provenance: number | null;
26
- model_declared: boolean;
27
- operator_verified: boolean;
28
- ratings: number;
29
- ratings_net_positive: boolean;
30
- };
31
- export declare const standing: import("drizzle-orm/pg-core").PgTableWithColumns<{
32
- name: "standing";
33
- schema: undefined;
34
- columns: {
35
- createdAt: import("drizzle-orm/pg-core").PgColumn<{
36
- name: "created_at";
37
- tableName: "standing";
38
- dataType: "date";
39
- columnType: "PgTimestamp";
40
- data: Date;
41
- driverParam: string;
42
- notNull: true;
43
- hasDefault: true;
44
- isPrimaryKey: false;
45
- isAutoincrement: false;
46
- hasRuntimeDefault: false;
47
- enumValues: undefined;
48
- baseColumn: never;
49
- identity: undefined;
50
- generated: undefined;
51
- }, {}, {}>;
52
- updatedAt: import("drizzle-orm/pg-core").PgColumn<{
53
- name: "updated_at";
54
- tableName: "standing";
55
- dataType: "date";
56
- columnType: "PgTimestamp";
57
- data: Date;
58
- driverParam: string;
59
- notNull: true;
60
- hasDefault: true;
61
- isPrimaryKey: false;
62
- isAutoincrement: false;
63
- hasRuntimeDefault: false;
64
- enumValues: undefined;
65
- baseColumn: never;
66
- identity: undefined;
67
- generated: undefined;
68
- }, {}, {}>;
69
- agentId: import("drizzle-orm/pg-core").PgColumn<{
70
- name: "agent_id";
71
- tableName: "standing";
72
- dataType: "string";
73
- columnType: "PgText";
74
- data: string;
75
- driverParam: string;
76
- notNull: true;
77
- hasDefault: false;
78
- isPrimaryKey: false;
79
- isAutoincrement: false;
80
- hasRuntimeDefault: false;
81
- enumValues: [string, ...string[]];
82
- baseColumn: never;
83
- identity: undefined;
84
- generated: undefined;
85
- }, {}, {}>;
86
- version: import("drizzle-orm/pg-core").PgColumn<{
87
- name: "version";
88
- tableName: "standing";
89
- dataType: "string";
90
- columnType: "PgText";
91
- data: string;
92
- driverParam: string;
93
- notNull: true;
94
- hasDefault: false;
95
- isPrimaryKey: false;
96
- isAutoincrement: false;
97
- hasRuntimeDefault: false;
98
- enumValues: [string, ...string[]];
99
- baseColumn: never;
100
- identity: undefined;
101
- generated: undefined;
102
- }, {}, {}>;
103
- level: import("drizzle-orm/pg-core").PgColumn<{
104
- name: "level";
105
- tableName: "standing";
106
- dataType: "string";
107
- columnType: "PgText";
108
- data: "bronze" | "gold" | "none" | "silver";
109
- driverParam: string;
110
- notNull: true;
111
- hasDefault: false;
112
- isPrimaryKey: false;
113
- isAutoincrement: false;
114
- hasRuntimeDefault: false;
115
- enumValues: [string, ...string[]];
116
- baseColumn: never;
117
- identity: undefined;
118
- generated: undefined;
119
- }, {}, {
120
- $type: "bronze" | "gold" | "none" | "silver";
121
- }>;
122
- counts: import("drizzle-orm/pg-core").PgColumn<{
123
- name: "counts";
124
- tableName: "standing";
125
- dataType: "json";
126
- columnType: "PgJsonb";
127
- data: StoredCounts;
128
- driverParam: unknown;
129
- notNull: true;
130
- hasDefault: false;
131
- isPrimaryKey: false;
132
- isAutoincrement: false;
133
- hasRuntimeDefault: false;
134
- enumValues: undefined;
135
- baseColumn: never;
136
- identity: undefined;
137
- generated: undefined;
138
- }, {}, {
139
- $type: StoredCounts;
140
- }>;
141
- levelInputs: import("drizzle-orm/pg-core").PgColumn<{
142
- name: "level_inputs";
143
- tableName: "standing";
144
- dataType: "json";
145
- columnType: "PgJsonb";
146
- data: StoredLevelInputs;
147
- driverParam: unknown;
148
- notNull: false;
149
- hasDefault: false;
150
- isPrimaryKey: false;
151
- isAutoincrement: false;
152
- hasRuntimeDefault: false;
153
- enumValues: undefined;
154
- baseColumn: never;
155
- identity: undefined;
156
- generated: undefined;
157
- }, {}, {
158
- $type: StoredLevelInputs;
159
- }>;
160
- historyDays: import("drizzle-orm/pg-core").PgColumn<{
161
- name: "history_days";
162
- tableName: "standing";
163
- dataType: "number";
164
- columnType: "PgInteger";
165
- data: number;
166
- driverParam: string | number;
167
- notNull: true;
168
- hasDefault: false;
169
- isPrimaryKey: false;
170
- isAutoincrement: false;
171
- hasRuntimeDefault: false;
172
- enumValues: undefined;
173
- baseColumn: never;
174
- identity: undefined;
175
- generated: undefined;
176
- }, {}, {}>;
177
- lastActive: import("drizzle-orm/pg-core").PgColumn<{
178
- name: "last_active";
179
- tableName: "standing";
180
- dataType: "date";
181
- columnType: "PgTimestamp";
182
- data: Date;
183
- driverParam: string;
184
- notNull: false;
185
- hasDefault: false;
186
- isPrimaryKey: false;
187
- isAutoincrement: false;
188
- hasRuntimeDefault: false;
189
- enumValues: undefined;
190
- baseColumn: never;
191
- identity: undefined;
192
- generated: undefined;
193
- }, {}, {}>;
194
- dormantDays: import("drizzle-orm/pg-core").PgColumn<{
195
- name: "dormant_days";
196
- tableName: "standing";
197
- dataType: "number";
198
- columnType: "PgInteger";
199
- data: number;
200
- driverParam: string | number;
201
- notNull: false;
202
- hasDefault: false;
203
- isPrimaryKey: false;
204
- isAutoincrement: false;
205
- hasRuntimeDefault: false;
206
- enumValues: undefined;
207
- baseColumn: never;
208
- identity: undefined;
209
- generated: undefined;
210
- }, {}, {}>;
211
- quiet: import("drizzle-orm/pg-core").PgColumn<{
212
- name: "quiet";
213
- tableName: "standing";
214
- dataType: "boolean";
215
- columnType: "PgBoolean";
216
- data: boolean;
217
- driverParam: boolean;
218
- notNull: true;
219
- hasDefault: true;
220
- isPrimaryKey: false;
221
- isAutoincrement: false;
222
- hasRuntimeDefault: false;
223
- enumValues: undefined;
224
- baseColumn: never;
225
- identity: undefined;
226
- generated: undefined;
227
- }, {}, {}>;
228
- noSeal: import("drizzle-orm/pg-core").PgColumn<{
229
- name: "no_seal";
230
- tableName: "standing";
231
- dataType: "boolean";
232
- columnType: "PgBoolean";
233
- data: boolean;
234
- driverParam: boolean;
235
- notNull: true;
236
- hasDefault: true;
237
- isPrimaryKey: false;
238
- isAutoincrement: false;
239
- hasRuntimeDefault: false;
240
- enumValues: undefined;
241
- baseColumn: never;
242
- identity: undefined;
243
- generated: undefined;
244
- }, {}, {}>;
245
- computedAt: import("drizzle-orm/pg-core").PgColumn<{
246
- name: "computed_at";
247
- tableName: "standing";
248
- dataType: "date";
249
- columnType: "PgTimestamp";
250
- data: Date;
251
- driverParam: string;
252
- notNull: true;
253
- hasDefault: false;
254
- isPrimaryKey: false;
255
- isAutoincrement: false;
256
- hasRuntimeDefault: false;
257
- enumValues: undefined;
258
- baseColumn: never;
259
- identity: undefined;
260
- generated: undefined;
261
- }, {}, {}>;
262
- };
263
- dialect: 'pg';
264
- }>;
@@ -1,34 +0,0 @@
1
- import { sql } from 'drizzle-orm';
2
- import { boolean, check, integer, jsonb, pgTable, primaryKey, text, timestamp, } from 'drizzle-orm/pg-core';
3
- import { agents } from './agents.js';
4
- import { timestamps } from './timestamps.js';
5
- // Materialised by the scoring run, one row per (agent, version) it scored,
6
- // replaced on every run. level is the SEAL standard level, none below
7
- // bronze. last_active and dormant_days are the agent's, not the version's,
8
- // as of computed_at. quiet is true at 14 dormant days or more. no_seal is
9
- // true at 90 or more, when the level is none and no SEAL is issued until
10
- // activity resumes. counts are the ones the level stands on, which for a
11
- // new version include what it inherited from the previous one.
12
- // level_inputs are the scores and flags the level read, null on a row
13
- // written before they were stored, until the agent's next run.
14
- export const standing = pgTable('standing', {
15
- agentId: text('agent_id')
16
- .notNull()
17
- .references(() => agents.id),
18
- version: text('version').notNull(),
19
- level: text('level').$type().notNull(),
20
- counts: jsonb('counts').$type().notNull(),
21
- levelInputs: jsonb('level_inputs').$type(),
22
- historyDays: integer('history_days').notNull(),
23
- lastActive: timestamp('last_active', { withTimezone: true }),
24
- dormantDays: integer('dormant_days'),
25
- quiet: boolean('quiet').notNull().default(false),
26
- noSeal: boolean('no_seal').notNull().default(false),
27
- computedAt: timestamp('computed_at', { withTimezone: true }).notNull(),
28
- ...timestamps,
29
- }, (t) => [
30
- primaryKey({ columns: [t.agentId, t.version] }),
31
- // The issued levels only. Platinum is reserved on LADDER and has no
32
- // standing row until it is issued with a SEAL ver bump.
33
- check('standing_level', sql `${t.level} in ('none', 'bronze', 'silver', 'gold')`),
34
- ]);
@@ -1,143 +0,0 @@
1
- export declare const taskClaimFailures: import("drizzle-orm/pg-core").PgTableWithColumns<{
2
- name: "task_claim_failures";
3
- schema: undefined;
4
- columns: {
5
- createdAt: import("drizzle-orm/pg-core").PgColumn<{
6
- name: "created_at";
7
- tableName: "task_claim_failures";
8
- dataType: "date";
9
- columnType: "PgTimestamp";
10
- data: Date;
11
- driverParam: string;
12
- notNull: true;
13
- hasDefault: true;
14
- isPrimaryKey: false;
15
- isAutoincrement: false;
16
- hasRuntimeDefault: false;
17
- enumValues: undefined;
18
- baseColumn: never;
19
- identity: undefined;
20
- generated: undefined;
21
- }, {}, {}>;
22
- updatedAt: import("drizzle-orm/pg-core").PgColumn<{
23
- name: "updated_at";
24
- tableName: "task_claim_failures";
25
- dataType: "date";
26
- columnType: "PgTimestamp";
27
- data: Date;
28
- driverParam: string;
29
- notNull: true;
30
- hasDefault: true;
31
- isPrimaryKey: false;
32
- isAutoincrement: false;
33
- hasRuntimeDefault: false;
34
- enumValues: undefined;
35
- baseColumn: never;
36
- identity: undefined;
37
- generated: undefined;
38
- }, {}, {}>;
39
- id: import("drizzle-orm/pg-core").PgColumn<{
40
- name: "id";
41
- tableName: "task_claim_failures";
42
- dataType: "string";
43
- columnType: "PgUUID";
44
- data: string;
45
- driverParam: string;
46
- notNull: true;
47
- hasDefault: true;
48
- isPrimaryKey: true;
49
- isAutoincrement: false;
50
- hasRuntimeDefault: false;
51
- enumValues: undefined;
52
- baseColumn: never;
53
- identity: undefined;
54
- generated: undefined;
55
- }, {}, {}>;
56
- taskId: import("drizzle-orm/pg-core").PgColumn<{
57
- name: "task_id";
58
- tableName: "task_claim_failures";
59
- dataType: "string";
60
- columnType: "PgUUID";
61
- data: string;
62
- driverParam: string;
63
- notNull: true;
64
- hasDefault: false;
65
- isPrimaryKey: false;
66
- isAutoincrement: false;
67
- hasRuntimeDefault: false;
68
- enumValues: undefined;
69
- baseColumn: never;
70
- identity: undefined;
71
- generated: undefined;
72
- }, {}, {}>;
73
- agentId: import("drizzle-orm/pg-core").PgColumn<{
74
- name: "agent_id";
75
- tableName: "task_claim_failures";
76
- dataType: "string";
77
- columnType: "PgText";
78
- data: string;
79
- driverParam: string;
80
- notNull: true;
81
- hasDefault: false;
82
- isPrimaryKey: false;
83
- isAutoincrement: false;
84
- hasRuntimeDefault: false;
85
- enumValues: [string, ...string[]];
86
- baseColumn: never;
87
- identity: undefined;
88
- generated: undefined;
89
- }, {}, {}>;
90
- version: import("drizzle-orm/pg-core").PgColumn<{
91
- name: "version";
92
- tableName: "task_claim_failures";
93
- dataType: "string";
94
- columnType: "PgText";
95
- data: string;
96
- driverParam: string;
97
- notNull: true;
98
- hasDefault: false;
99
- isPrimaryKey: false;
100
- isAutoincrement: false;
101
- hasRuntimeDefault: false;
102
- enumValues: [string, ...string[]];
103
- baseColumn: never;
104
- identity: undefined;
105
- generated: undefined;
106
- }, {}, {}>;
107
- claimedAt: import("drizzle-orm/pg-core").PgColumn<{
108
- name: "claimed_at";
109
- tableName: "task_claim_failures";
110
- dataType: "date";
111
- columnType: "PgTimestamp";
112
- data: Date;
113
- driverParam: string;
114
- notNull: true;
115
- hasDefault: false;
116
- isPrimaryKey: false;
117
- isAutoincrement: false;
118
- hasRuntimeDefault: false;
119
- enumValues: undefined;
120
- baseColumn: never;
121
- identity: undefined;
122
- generated: undefined;
123
- }, {}, {}>;
124
- failedAt: import("drizzle-orm/pg-core").PgColumn<{
125
- name: "failed_at";
126
- tableName: "task_claim_failures";
127
- dataType: "date";
128
- columnType: "PgTimestamp";
129
- data: Date;
130
- driverParam: string;
131
- notNull: true;
132
- hasDefault: true;
133
- isPrimaryKey: false;
134
- isAutoincrement: false;
135
- hasRuntimeDefault: false;
136
- enumValues: undefined;
137
- baseColumn: never;
138
- identity: undefined;
139
- generated: undefined;
140
- }, {}, {}>;
141
- };
142
- dialect: 'pg';
143
- }>;
@@ -1,37 +0,0 @@
1
- import { index, pgTable, text, timestamp, uuid } from 'drizzle-orm/pg-core';
2
- import { agents } from './agents.js';
3
- import { tasks } from './tasks.js';
4
- import { timestamps } from './timestamps.js';
5
- /*
6
- * Claims released at the failed submit cap (TASK_MAX_FAILED_SUBMITS in
7
- * apps/api/src/routes/tasks.ts). The release nulls the task's claimant and
8
- * claimed_at, so without this row the claim would drop out of the agent's
9
- * reliability. The scoring run counts each row as a claim that never
10
- * verified, like a claim held until expiry.
11
- *
12
- * claimed_at is the released claim's, and version the claimant's version
13
- * at that claim, worked out at the release the same way the run credits a
14
- * task (claimVersion in apps/api/src/scoring/run.ts). failed_at is the
15
- * submit that reached the cap. Deleting the agent or the task deletes the
16
- * row (deleteAgents in apps/api/src/account.ts).
17
- */
18
- export const taskClaimFailures = pgTable('task_claim_failures', {
19
- id: uuid('id').primaryKey().defaultRandom(),
20
- taskId: uuid('task_id')
21
- .notNull()
22
- .references(() => tasks.id),
23
- agentId: text('agent_id')
24
- .notNull()
25
- .references(() => agents.id),
26
- version: text('version').notNull(),
27
- claimedAt: timestamp('claimed_at', { withTimezone: true }).notNull(),
28
- failedAt: timestamp('failed_at', { withTimezone: true })
29
- .notNull()
30
- .defaultNow(),
31
- ...timestamps,
32
- }, (t) => [
33
- // The scoring run's read, one agent's released claims by claim time.
34
- index('task_claim_failures_agent_claimed_at_idx').on(t.agentId, t.claimedAt),
35
- // A deletion's rows by task.
36
- index('task_claim_failures_task_id_idx').on(t.taskId),
37
- ]);