corydora 0.3.2 → 1.0.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.
Files changed (63) hide show
  1. package/CHANGELOG.md +69 -0
  2. package/README.md +27 -4
  3. package/dist/commands/doctor.js +37 -1
  4. package/dist/commands/doctor.js.map +1 -1
  5. package/dist/commands/init.js +114 -14
  6. package/dist/commands/init.js.map +1 -1
  7. package/dist/commands/run.d.ts +3 -0
  8. package/dist/commands/run.js +51 -20
  9. package/dist/commands/run.js.map +1 -1
  10. package/dist/commands/status.js +37 -6
  11. package/dist/commands/status.js.map +1 -1
  12. package/dist/config/files.js +23 -1
  13. package/dist/config/files.js.map +1 -1
  14. package/dist/config/schema.d.ts +0 -80
  15. package/dist/config/schema.js +162 -52
  16. package/dist/config/schema.js.map +1 -1
  17. package/dist/constants.d.ts +1 -0
  18. package/dist/constants.js +9 -0
  19. package/dist/constants.js.map +1 -1
  20. package/dist/filesystem/discovery.d.ts +2 -0
  21. package/dist/filesystem/discovery.js +2 -2
  22. package/dist/filesystem/discovery.js.map +1 -1
  23. package/dist/filesystem/gitignore.d.ts +3 -0
  24. package/dist/filesystem/gitignore.js +37 -7
  25. package/dist/filesystem/gitignore.js.map +1 -1
  26. package/dist/git/isolation.d.ts +1 -0
  27. package/dist/git/isolation.js +5 -4
  28. package/dist/git/isolation.js.map +1 -1
  29. package/dist/git/repository.d.ts +2 -1
  30. package/dist/git/repository.js +21 -11
  31. package/dist/git/repository.js.map +1 -1
  32. package/dist/index.js +17 -0
  33. package/dist/index.js.map +1 -1
  34. package/dist/providers/fake.js +16 -0
  35. package/dist/providers/fake.js.map +1 -1
  36. package/dist/providers/utils.js +24 -0
  37. package/dist/providers/utils.js.map +1 -1
  38. package/dist/queue/render.js +10 -3
  39. package/dist/queue/render.js.map +1 -1
  40. package/dist/queue/state.d.ts +53 -4
  41. package/dist/queue/state.js +301 -29
  42. package/dist/queue/state.js.map +1 -1
  43. package/dist/runtime/modes.d.ts +29 -0
  44. package/dist/runtime/modes.js +423 -0
  45. package/dist/runtime/modes.js.map +1 -0
  46. package/dist/runtime/prompts.d.ts +8 -3
  47. package/dist/runtime/prompts.js +58 -12
  48. package/dist/runtime/prompts.js.map +1 -1
  49. package/dist/runtime/routes.d.ts +28 -0
  50. package/dist/runtime/routes.js +87 -0
  51. package/dist/runtime/routes.js.map +1 -0
  52. package/dist/runtime/run-session.d.ts +3 -2
  53. package/dist/runtime/run-session.js +521 -206
  54. package/dist/runtime/run-session.js.map +1 -1
  55. package/dist/runtime/tooling.d.ts +2 -0
  56. package/dist/runtime/tooling.js +79 -0
  57. package/dist/runtime/tooling.js.map +1 -0
  58. package/dist/runtime/validation.d.ts +7 -0
  59. package/dist/runtime/validation.js +115 -0
  60. package/dist/runtime/validation.js.map +1 -0
  61. package/dist/types/domain.d.ts +139 -16
  62. package/package.json +4 -3
  63. package/schemas/corydora.schema.json +165 -4
@@ -4,7 +4,17 @@
4
4
  "title": "CorydoraConfig",
5
5
  "type": "object",
6
6
  "additionalProperties": false,
7
- "required": ["version", "git", "runtime", "agents", "scan", "execution", "todo", "paths"],
7
+ "required": [
8
+ "version",
9
+ "git",
10
+ "runtime",
11
+ "modes",
12
+ "agents",
13
+ "scan",
14
+ "execution",
15
+ "todo",
16
+ "paths"
17
+ ],
8
18
  "properties": {
9
19
  "version": {
10
20
  "type": "integer",
@@ -33,10 +43,28 @@
33
43
  "runtime": {
34
44
  "type": "object",
35
45
  "additionalProperties": false,
36
- "required": ["provider", "model", "maxOutputTokens", "requestTimeoutMs", "maxRetries"],
46
+ "required": [
47
+ "provider",
48
+ "model",
49
+ "maxOutputTokens",
50
+ "requestTimeoutMs",
51
+ "maxRetries",
52
+ "stages"
53
+ ],
37
54
  "properties": {
38
55
  "provider": {
39
- "type": "string"
56
+ "type": "string",
57
+ "enum": [
58
+ "claude-cli",
59
+ "codex-cli",
60
+ "gemini-cli",
61
+ "anthropic-api",
62
+ "openai-api",
63
+ "google-api",
64
+ "bedrock",
65
+ "ollama",
66
+ "fake"
67
+ ]
40
68
  },
41
69
  "model": {
42
70
  "type": "string"
@@ -55,6 +83,49 @@
55
83
  "maxRetries": {
56
84
  "type": "integer",
57
85
  "minimum": 0
86
+ },
87
+ "stages": {
88
+ "type": "object",
89
+ "additionalProperties": false,
90
+ "required": ["analyze", "fix", "summary"],
91
+ "properties": {
92
+ "analyze": { "$ref": "#/$defs/runtimeStage" },
93
+ "fix": { "$ref": "#/$defs/runtimeStage" },
94
+ "summary": { "$ref": "#/$defs/runtimeStage" }
95
+ }
96
+ }
97
+ }
98
+ },
99
+ "modes": {
100
+ "type": "object",
101
+ "additionalProperties": false,
102
+ "required": ["default", "profiles"],
103
+ "properties": {
104
+ "default": {
105
+ "type": "string",
106
+ "enum": ["auto", "churn", "clean", "refactor", "performance", "linting", "documentation"]
107
+ },
108
+ "profiles": {
109
+ "type": "object",
110
+ "additionalProperties": false,
111
+ "required": [
112
+ "auto",
113
+ "churn",
114
+ "clean",
115
+ "refactor",
116
+ "performance",
117
+ "linting",
118
+ "documentation"
119
+ ],
120
+ "properties": {
121
+ "auto": { "$ref": "#/$defs/modeProfile" },
122
+ "churn": { "$ref": "#/$defs/modeProfile" },
123
+ "clean": { "$ref": "#/$defs/modeProfile" },
124
+ "refactor": { "$ref": "#/$defs/modeProfile" },
125
+ "performance": { "$ref": "#/$defs/modeProfile" },
126
+ "linting": { "$ref": "#/$defs/modeProfile" },
127
+ "documentation": { "$ref": "#/$defs/modeProfile" }
128
+ }
58
129
  }
59
130
  }
60
131
  },
@@ -126,7 +197,11 @@
126
197
  "maxFixesPerRun",
127
198
  "maxRuntimeMinutes",
128
199
  "backlogTarget",
129
- "validateAfterFix"
200
+ "validateAfterFix",
201
+ "maxAnalyzeWorkers",
202
+ "maxFixWorkers",
203
+ "maxAttempts",
204
+ "leaseTtlMinutes"
130
205
  ],
131
206
  "properties": {
132
207
  "backgroundByDefault": {
@@ -149,6 +224,22 @@
149
224
  },
150
225
  "validateAfterFix": {
151
226
  "type": "boolean"
227
+ },
228
+ "maxAnalyzeWorkers": {
229
+ "type": "integer",
230
+ "minimum": 1
231
+ },
232
+ "maxFixWorkers": {
233
+ "type": "integer",
234
+ "minimum": 1
235
+ },
236
+ "maxAttempts": {
237
+ "type": "integer",
238
+ "minimum": 1
239
+ },
240
+ "leaseTtlMinutes": {
241
+ "type": "integer",
242
+ "minimum": 1
152
243
  }
153
244
  }
154
245
  },
@@ -190,5 +281,75 @@
190
281
  }
191
282
  }
192
283
  }
284
+ },
285
+ "$defs": {
286
+ "runtimeStage": {
287
+ "type": "object",
288
+ "additionalProperties": false,
289
+ "properties": {
290
+ "provider": {
291
+ "type": "string",
292
+ "enum": [
293
+ "claude-cli",
294
+ "codex-cli",
295
+ "gemini-cli",
296
+ "anthropic-api",
297
+ "openai-api",
298
+ "google-api",
299
+ "bedrock",
300
+ "ollama",
301
+ "fake"
302
+ ]
303
+ },
304
+ "model": {
305
+ "type": "string"
306
+ },
307
+ "fallbackProvider": {
308
+ "type": "string",
309
+ "enum": [
310
+ "claude-cli",
311
+ "codex-cli",
312
+ "gemini-cli",
313
+ "anthropic-api",
314
+ "openai-api",
315
+ "google-api",
316
+ "bedrock",
317
+ "ollama",
318
+ "fake"
319
+ ]
320
+ },
321
+ "maxOutputTokens": {
322
+ "type": "integer",
323
+ "minimum": 1
324
+ },
325
+ "requestTimeoutMs": {
326
+ "type": "integer",
327
+ "minimum": 1
328
+ },
329
+ "maxRetries": {
330
+ "type": "integer",
331
+ "minimum": 0
332
+ }
333
+ }
334
+ },
335
+ "modeProfile": {
336
+ "type": "object",
337
+ "additionalProperties": false,
338
+ "properties": {
339
+ "agentIds": {
340
+ "type": "array",
341
+ "items": {
342
+ "type": "string"
343
+ }
344
+ },
345
+ "categoryBias": {
346
+ "type": "array",
347
+ "items": {
348
+ "type": "string",
349
+ "enum": ["bugs", "performance", "tests", "todo", "features"]
350
+ }
351
+ }
352
+ }
353
+ }
193
354
  }
194
355
  }