ai-dev-worklog 0.5.0

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.
@@ -0,0 +1,418 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://github.com/alexan780/ai-dev-worklog/schema/worklog.schema.json",
4
+ "title": "AI Dev Worklog Scan",
5
+ "description": "Structured output written by ai-dev-worklog scan.",
6
+ "type": "object",
7
+ "additionalProperties": false,
8
+ "required": [
9
+ "schemaVersion",
10
+ "generatedAt",
11
+ "tool",
12
+ "repository",
13
+ "declaredIntent",
14
+ "summary",
15
+ "evidence",
16
+ "observedChanges",
17
+ "validation",
18
+ "riskSignals",
19
+ "nextSteps"
20
+ ],
21
+ "properties": {
22
+ "schemaVersion": {
23
+ "const": "0.3"
24
+ },
25
+ "generatedAt": {
26
+ "type": "string",
27
+ "format": "date-time"
28
+ },
29
+ "tool": {
30
+ "$ref": "#/$defs/toolInfo"
31
+ },
32
+ "repository": {
33
+ "$ref": "#/$defs/repositoryInfo"
34
+ },
35
+ "declaredIntent": {
36
+ "$ref": "#/$defs/declaredIntent"
37
+ },
38
+ "summary": {
39
+ "$ref": "#/$defs/summary"
40
+ },
41
+ "evidence": {
42
+ "$ref": "#/$defs/evidence"
43
+ },
44
+ "observedChanges": {
45
+ "$ref": "#/$defs/observedChanges"
46
+ },
47
+ "validation": {
48
+ "$ref": "#/$defs/validation"
49
+ },
50
+ "riskSignals": {
51
+ "$ref": "#/$defs/riskSignals"
52
+ },
53
+ "nextSteps": {
54
+ "$ref": "#/$defs/nextSteps"
55
+ }
56
+ },
57
+ "$defs": {
58
+ "toolInfo": {
59
+ "type": "object",
60
+ "additionalProperties": false,
61
+ "required": [
62
+ "name",
63
+ "version",
64
+ "command"
65
+ ],
66
+ "properties": {
67
+ "name": {
68
+ "const": "ai-dev-worklog"
69
+ },
70
+ "version": {
71
+ "type": "string"
72
+ },
73
+ "command": {
74
+ "const": "ai-dev-worklog scan"
75
+ }
76
+ }
77
+ },
78
+ "repositoryInfo": {
79
+ "type": "object",
80
+ "additionalProperties": false,
81
+ "required": [
82
+ "cwd",
83
+ "gitRoot"
84
+ ],
85
+ "properties": {
86
+ "cwd": {
87
+ "type": "string"
88
+ },
89
+ "gitRoot": {
90
+ "type": "string"
91
+ }
92
+ }
93
+ },
94
+ "declaredIntent": {
95
+ "type": "object",
96
+ "additionalProperties": false,
97
+ "required": [
98
+ "status",
99
+ "source",
100
+ "summary"
101
+ ],
102
+ "properties": {
103
+ "status": {
104
+ "enum": [
105
+ "not_provided",
106
+ "provided"
107
+ ]
108
+ },
109
+ "source": {
110
+ "enum": [
111
+ "not_provided",
112
+ "cli_option"
113
+ ]
114
+ },
115
+ "summary": {
116
+ "type": [
117
+ "string",
118
+ "null"
119
+ ]
120
+ }
121
+ }
122
+ },
123
+ "summary": {
124
+ "type": "object",
125
+ "additionalProperties": false,
126
+ "required": [
127
+ "statusEntryCount",
128
+ "diffNameStatusEntryCount",
129
+ "changedFileCount",
130
+ "hasWorkingTreeChanges",
131
+ "validationStatus",
132
+ "riskSignalCount"
133
+ ],
134
+ "properties": {
135
+ "statusEntryCount": {
136
+ "type": "integer",
137
+ "minimum": 0
138
+ },
139
+ "diffNameStatusEntryCount": {
140
+ "type": "integer",
141
+ "minimum": 0
142
+ },
143
+ "changedFileCount": {
144
+ "type": "integer",
145
+ "minimum": 0
146
+ },
147
+ "hasWorkingTreeChanges": {
148
+ "type": "boolean"
149
+ },
150
+ "validationStatus": {
151
+ "const": "not_recorded"
152
+ },
153
+ "riskSignalCount": {
154
+ "type": "integer",
155
+ "minimum": 0
156
+ }
157
+ }
158
+ },
159
+ "evidence": {
160
+ "type": "object",
161
+ "additionalProperties": false,
162
+ "required": [
163
+ "git"
164
+ ],
165
+ "properties": {
166
+ "git": {
167
+ "type": "object",
168
+ "additionalProperties": false,
169
+ "required": [
170
+ "statusPorcelain",
171
+ "diffStat",
172
+ "diffNameStatus"
173
+ ],
174
+ "properties": {
175
+ "statusPorcelain": {
176
+ "$ref": "#/$defs/gitCommandResult"
177
+ },
178
+ "diffStat": {
179
+ "$ref": "#/$defs/gitCommandResult"
180
+ },
181
+ "diffNameStatus": {
182
+ "$ref": "#/$defs/gitCommandResult"
183
+ }
184
+ }
185
+ }
186
+ }
187
+ },
188
+ "gitCommandResult": {
189
+ "type": "object",
190
+ "additionalProperties": false,
191
+ "required": [
192
+ "command",
193
+ "stdout",
194
+ "stderr",
195
+ "exitCode"
196
+ ],
197
+ "properties": {
198
+ "command": {
199
+ "type": "string"
200
+ },
201
+ "stdout": {
202
+ "type": "string"
203
+ },
204
+ "stderr": {
205
+ "type": "string"
206
+ },
207
+ "exitCode": {
208
+ "type": "integer",
209
+ "minimum": 0
210
+ }
211
+ }
212
+ },
213
+ "observedChanges": {
214
+ "type": "object",
215
+ "additionalProperties": false,
216
+ "required": [
217
+ "statusEntries",
218
+ "diffNameStatusEntries",
219
+ "files"
220
+ ],
221
+ "properties": {
222
+ "statusEntries": {
223
+ "type": "array",
224
+ "items": {
225
+ "$ref": "#/$defs/statusEntry"
226
+ }
227
+ },
228
+ "diffNameStatusEntries": {
229
+ "type": "array",
230
+ "items": {
231
+ "$ref": "#/$defs/nameStatusEntry"
232
+ }
233
+ },
234
+ "files": {
235
+ "type": "array",
236
+ "items": {
237
+ "$ref": "#/$defs/observedFileChange"
238
+ }
239
+ }
240
+ }
241
+ },
242
+ "statusEntry": {
243
+ "type": "object",
244
+ "additionalProperties": false,
245
+ "required": [
246
+ "indexStatus",
247
+ "workingTreeStatus",
248
+ "path",
249
+ "raw"
250
+ ],
251
+ "properties": {
252
+ "indexStatus": {
253
+ "type": "string",
254
+ "minLength": 1,
255
+ "maxLength": 1
256
+ },
257
+ "workingTreeStatus": {
258
+ "type": "string",
259
+ "minLength": 1,
260
+ "maxLength": 1
261
+ },
262
+ "path": {
263
+ "type": "string"
264
+ },
265
+ "previousPath": {
266
+ "type": "string"
267
+ },
268
+ "raw": {
269
+ "type": "string"
270
+ }
271
+ }
272
+ },
273
+ "nameStatusEntry": {
274
+ "type": "object",
275
+ "additionalProperties": false,
276
+ "required": [
277
+ "status",
278
+ "path",
279
+ "raw"
280
+ ],
281
+ "properties": {
282
+ "status": {
283
+ "type": "string"
284
+ },
285
+ "path": {
286
+ "type": "string"
287
+ },
288
+ "previousPath": {
289
+ "type": "string"
290
+ },
291
+ "raw": {
292
+ "type": "string"
293
+ }
294
+ }
295
+ },
296
+ "observedFileChange": {
297
+ "type": "object",
298
+ "additionalProperties": false,
299
+ "required": [
300
+ "path",
301
+ "previousPath",
302
+ "status",
303
+ "sources"
304
+ ],
305
+ "properties": {
306
+ "path": {
307
+ "type": "string"
308
+ },
309
+ "previousPath": {
310
+ "type": [
311
+ "string",
312
+ "null"
313
+ ]
314
+ },
315
+ "status": {
316
+ "enum": [
317
+ "modified",
318
+ "added",
319
+ "deleted",
320
+ "renamed",
321
+ "copied",
322
+ "untracked",
323
+ "unknown"
324
+ ]
325
+ },
326
+ "sources": {
327
+ "type": "array",
328
+ "items": {
329
+ "type": "string"
330
+ }
331
+ }
332
+ }
333
+ },
334
+ "validation": {
335
+ "type": "object",
336
+ "additionalProperties": false,
337
+ "required": [
338
+ "status",
339
+ "commands"
340
+ ],
341
+ "properties": {
342
+ "status": {
343
+ "const": "not_recorded"
344
+ },
345
+ "commands": {
346
+ "type": "array",
347
+ "maxItems": 0
348
+ }
349
+ }
350
+ },
351
+ "riskSignals": {
352
+ "type": "object",
353
+ "additionalProperties": false,
354
+ "required": [
355
+ "items"
356
+ ],
357
+ "properties": {
358
+ "items": {
359
+ "type": "array",
360
+ "items": {
361
+ "$ref": "#/$defs/riskSignal"
362
+ }
363
+ }
364
+ }
365
+ },
366
+ "riskSignal": {
367
+ "type": "object",
368
+ "additionalProperties": false,
369
+ "required": [
370
+ "kind",
371
+ "severity",
372
+ "message",
373
+ "paths"
374
+ ],
375
+ "properties": {
376
+ "kind": {
377
+ "enum": [
378
+ "untracked_files",
379
+ "deleted_files",
380
+ "renamed_files"
381
+ ]
382
+ },
383
+ "severity": {
384
+ "enum": [
385
+ "info",
386
+ "warning"
387
+ ]
388
+ },
389
+ "message": {
390
+ "type": "string"
391
+ },
392
+ "paths": {
393
+ "type": "array",
394
+ "items": {
395
+ "type": "string"
396
+ }
397
+ }
398
+ }
399
+ },
400
+ "nextSteps": {
401
+ "type": "object",
402
+ "additionalProperties": false,
403
+ "required": [
404
+ "items",
405
+ "continuationPrompt"
406
+ ],
407
+ "properties": {
408
+ "items": {
409
+ "type": "array",
410
+ "maxItems": 0
411
+ },
412
+ "continuationPrompt": {
413
+ "type": "string"
414
+ }
415
+ }
416
+ }
417
+ }
418
+ }