runcastle 0.2.0 → 1.0.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.
Files changed (80) hide show
  1. package/README.md +47 -0
  2. package/bin/runcastle.js +5580 -0
  3. package/drizzle/0000_amused_bruce_banner.sql +74 -0
  4. package/drizzle/0001_mapped_feature_flag.sql +1 -0
  5. package/drizzle/0002_waypoints.sql +14 -0
  6. package/drizzle/0003_project_closed_at.sql +1 -0
  7. package/drizzle/0004_events_project_id.sql +28 -0
  8. package/drizzle/0005_project_setting_overrides.sql +2 -0
  9. package/drizzle/meta/0000_snapshot.json +466 -0
  10. package/drizzle/meta/0001_snapshot.json +474 -0
  11. package/drizzle/meta/0002_snapshot.json +568 -0
  12. package/drizzle/meta/0003_snapshot.json +575 -0
  13. package/drizzle/meta/0004_snapshot.json +582 -0
  14. package/drizzle/meta/0005_snapshot.json +596 -0
  15. package/drizzle/meta/_journal.json +48 -0
  16. package/hook-client.ts +67 -0
  17. package/index.js +5424 -0
  18. package/package.json +24 -30
  19. package/pty-host.cjs +186 -0
  20. package/sandcastle-template/Containerfile +33 -0
  21. package/sandcastle-template/Dockerfile +33 -0
  22. package/skills/burner/implement-ticket.md +42 -0
  23. package/skills/burner/research-waypoint.md +45 -0
  24. package/skills/packs/README.md +50 -0
  25. package/skills/packs/runcastle/.claude-plugin/plugin.json +6 -0
  26. package/skills/packs/runcastle/skills/converge/SKILL.md +51 -0
  27. package/skills/packs/runcastle/skills/ideate/SKILL.md +81 -0
  28. package/skills/packs/runcastle/skills/qa/SKILL.md +30 -0
  29. package/skills/packs/runcastle/skills/spec/SKILL.md +43 -0
  30. package/skills/packs/runcastle/skills/tickets/SKILL.md +52 -0
  31. package/skills/packs/runcastle/skills/waypoint/SKILL.md +54 -0
  32. package/web/assets/index-CKZ5Z7vc.css +1 -0
  33. package/web/assets/index-YBuT7tTz.js +108 -0
  34. package/web/index.html +13 -0
  35. package/dist/add-DD7G73HH.js +0 -315
  36. package/dist/add-DD7G73HH.js.map +0 -1
  37. package/dist/chunk-44KDPUYJ.js +0 -49
  38. package/dist/chunk-44KDPUYJ.js.map +0 -1
  39. package/dist/chunk-5VPKMXSV.js +0 -190
  40. package/dist/chunk-5VPKMXSV.js.map +0 -1
  41. package/dist/chunk-6CWCR5SO.js +0 -24
  42. package/dist/chunk-6CWCR5SO.js.map +0 -1
  43. package/dist/chunk-7CHGGMP7.js +0 -73
  44. package/dist/chunk-7CHGGMP7.js.map +0 -1
  45. package/dist/chunk-AHRTPV2C.js +0 -1082
  46. package/dist/chunk-AHRTPV2C.js.map +0 -1
  47. package/dist/chunk-GU4LRYYH.js +0 -41
  48. package/dist/chunk-GU4LRYYH.js.map +0 -1
  49. package/dist/chunk-LP5MV76P.js +0 -33
  50. package/dist/chunk-LP5MV76P.js.map +0 -1
  51. package/dist/chunk-OJ356IMJ.js +0 -136
  52. package/dist/chunk-OJ356IMJ.js.map +0 -1
  53. package/dist/chunk-PRNBOQHW.js +0 -32
  54. package/dist/chunk-PRNBOQHW.js.map +0 -1
  55. package/dist/chunk-QTC5Y3LU.js +0 -146
  56. package/dist/chunk-QTC5Y3LU.js.map +0 -1
  57. package/dist/chunk-SNUH2UT6.js +0 -95
  58. package/dist/chunk-SNUH2UT6.js.map +0 -1
  59. package/dist/chunk-UG25BZUN.js +0 -59
  60. package/dist/chunk-UG25BZUN.js.map +0 -1
  61. package/dist/chunk-VWAIXSB6.js +0 -78
  62. package/dist/chunk-VWAIXSB6.js.map +0 -1
  63. package/dist/index.js +0 -99
  64. package/dist/index.js.map +0 -1
  65. package/dist/info-3PW6A6JA.js +0 -80
  66. package/dist/info-3PW6A6JA.js.map +0 -1
  67. package/dist/init-MOJNLWXK.js +0 -212
  68. package/dist/init-MOJNLWXK.js.map +0 -1
  69. package/dist/logout-YPGZ6BB6.js +0 -27
  70. package/dist/logout-YPGZ6BB6.js.map +0 -1
  71. package/dist/publish-W37Y6TO6.js +0 -211
  72. package/dist/publish-W37Y6TO6.js.map +0 -1
  73. package/dist/run-M4XXNPGD.js +0 -291
  74. package/dist/run-M4XXNPGD.js.map +0 -1
  75. package/dist/search-2KNAXPM5.js +0 -55
  76. package/dist/search-2KNAXPM5.js.map +0 -1
  77. package/dist/update-UCT4K6IQ.js +0 -125
  78. package/dist/update-UCT4K6IQ.js.map +0 -1
  79. package/dist/validate-GFDSEVPV.js +0 -12
  80. package/dist/validate-GFDSEVPV.js.map +0 -1
@@ -0,0 +1,568 @@
1
+ {
2
+ "version": "6",
3
+ "dialect": "sqlite",
4
+ "id": "a1b2c3d4-0002-4002-8002-000000000002",
5
+ "prevId": "a1b2c3d4-0001-4001-8001-000000000001",
6
+ "tables": {
7
+ "events": {
8
+ "name": "events",
9
+ "columns": {
10
+ "id": {
11
+ "name": "id",
12
+ "type": "integer",
13
+ "primaryKey": true,
14
+ "notNull": true,
15
+ "autoincrement": true
16
+ },
17
+ "feature_id": {
18
+ "name": "feature_id",
19
+ "type": "text",
20
+ "primaryKey": false,
21
+ "notNull": true,
22
+ "autoincrement": false
23
+ },
24
+ "run_id": {
25
+ "name": "run_id",
26
+ "type": "text",
27
+ "primaryKey": false,
28
+ "notNull": false,
29
+ "autoincrement": false
30
+ },
31
+ "ticket_id": {
32
+ "name": "ticket_id",
33
+ "type": "text",
34
+ "primaryKey": false,
35
+ "notNull": false,
36
+ "autoincrement": false
37
+ },
38
+ "ts": {
39
+ "name": "ts",
40
+ "type": "integer",
41
+ "primaryKey": false,
42
+ "notNull": true,
43
+ "autoincrement": false
44
+ },
45
+ "type": {
46
+ "name": "type",
47
+ "type": "text",
48
+ "primaryKey": false,
49
+ "notNull": true,
50
+ "autoincrement": false
51
+ },
52
+ "message": {
53
+ "name": "message",
54
+ "type": "text",
55
+ "primaryKey": false,
56
+ "notNull": true,
57
+ "autoincrement": false
58
+ },
59
+ "data": {
60
+ "name": "data",
61
+ "type": "text",
62
+ "primaryKey": false,
63
+ "notNull": false,
64
+ "autoincrement": false
65
+ }
66
+ },
67
+ "indexes": {},
68
+ "foreignKeys": {},
69
+ "compositePrimaryKeys": {},
70
+ "uniqueConstraints": {},
71
+ "checkConstraints": {}
72
+ },
73
+ "features": {
74
+ "name": "features",
75
+ "columns": {
76
+ "id": {
77
+ "name": "id",
78
+ "type": "text",
79
+ "primaryKey": true,
80
+ "notNull": true,
81
+ "autoincrement": false
82
+ },
83
+ "project_id": {
84
+ "name": "project_id",
85
+ "type": "text",
86
+ "primaryKey": false,
87
+ "notNull": true,
88
+ "autoincrement": false
89
+ },
90
+ "slug": {
91
+ "name": "slug",
92
+ "type": "text",
93
+ "primaryKey": false,
94
+ "notNull": true,
95
+ "autoincrement": false
96
+ },
97
+ "title": {
98
+ "name": "title",
99
+ "type": "text",
100
+ "primaryKey": false,
101
+ "notNull": true,
102
+ "autoincrement": false
103
+ },
104
+ "one_liner": {
105
+ "name": "one_liner",
106
+ "type": "text",
107
+ "primaryKey": false,
108
+ "notNull": true,
109
+ "autoincrement": false
110
+ },
111
+ "size": {
112
+ "name": "size",
113
+ "type": "text",
114
+ "primaryKey": false,
115
+ "notNull": true,
116
+ "autoincrement": false
117
+ },
118
+ "phase": {
119
+ "name": "phase",
120
+ "type": "text",
121
+ "primaryKey": false,
122
+ "notNull": true,
123
+ "autoincrement": false
124
+ },
125
+ "branch": {
126
+ "name": "branch",
127
+ "type": "text",
128
+ "primaryKey": false,
129
+ "notNull": true,
130
+ "autoincrement": false
131
+ },
132
+ "status": {
133
+ "name": "status",
134
+ "type": "text",
135
+ "primaryKey": false,
136
+ "notNull": true,
137
+ "autoincrement": false
138
+ },
139
+ "created_at": {
140
+ "name": "created_at",
141
+ "type": "integer",
142
+ "primaryKey": false,
143
+ "notNull": true,
144
+ "autoincrement": false
145
+ },
146
+ "mapped": {
147
+ "name": "mapped",
148
+ "type": "integer",
149
+ "primaryKey": false,
150
+ "notNull": true,
151
+ "autoincrement": false,
152
+ "default": "false"
153
+ }
154
+ },
155
+ "indexes": {},
156
+ "foreignKeys": {},
157
+ "compositePrimaryKeys": {},
158
+ "uniqueConstraints": {},
159
+ "checkConstraints": {}
160
+ },
161
+ "gate_overrides": {
162
+ "name": "gate_overrides",
163
+ "columns": {
164
+ "id": {
165
+ "name": "id",
166
+ "type": "integer",
167
+ "primaryKey": true,
168
+ "notNull": true,
169
+ "autoincrement": true
170
+ },
171
+ "feature_id": {
172
+ "name": "feature_id",
173
+ "type": "text",
174
+ "primaryKey": false,
175
+ "notNull": true,
176
+ "autoincrement": false
177
+ },
178
+ "gate": {
179
+ "name": "gate",
180
+ "type": "text",
181
+ "primaryKey": false,
182
+ "notNull": true,
183
+ "autoincrement": false
184
+ },
185
+ "reason": {
186
+ "name": "reason",
187
+ "type": "text",
188
+ "primaryKey": false,
189
+ "notNull": true,
190
+ "autoincrement": false
191
+ },
192
+ "ts": {
193
+ "name": "ts",
194
+ "type": "integer",
195
+ "primaryKey": false,
196
+ "notNull": true,
197
+ "autoincrement": false
198
+ }
199
+ },
200
+ "indexes": {},
201
+ "foreignKeys": {},
202
+ "compositePrimaryKeys": {},
203
+ "uniqueConstraints": {},
204
+ "checkConstraints": {}
205
+ },
206
+ "projects": {
207
+ "name": "projects",
208
+ "columns": {
209
+ "id": {
210
+ "name": "id",
211
+ "type": "text",
212
+ "primaryKey": true,
213
+ "notNull": true,
214
+ "autoincrement": false
215
+ },
216
+ "name": {
217
+ "name": "name",
218
+ "type": "text",
219
+ "primaryKey": false,
220
+ "notNull": true,
221
+ "autoincrement": false
222
+ },
223
+ "repo_path": {
224
+ "name": "repo_path",
225
+ "type": "text",
226
+ "primaryKey": false,
227
+ "notNull": true,
228
+ "autoincrement": false
229
+ },
230
+ "main_branch": {
231
+ "name": "main_branch",
232
+ "type": "text",
233
+ "primaryKey": false,
234
+ "notNull": true,
235
+ "autoincrement": false
236
+ },
237
+ "dev_command": {
238
+ "name": "dev_command",
239
+ "type": "text",
240
+ "primaryKey": false,
241
+ "notNull": false,
242
+ "autoincrement": false
243
+ }
244
+ },
245
+ "indexes": {},
246
+ "foreignKeys": {},
247
+ "compositePrimaryKeys": {},
248
+ "uniqueConstraints": {},
249
+ "checkConstraints": {}
250
+ },
251
+ "runs": {
252
+ "name": "runs",
253
+ "columns": {
254
+ "id": {
255
+ "name": "id",
256
+ "type": "text",
257
+ "primaryKey": true,
258
+ "notNull": true,
259
+ "autoincrement": false
260
+ },
261
+ "feature_id": {
262
+ "name": "feature_id",
263
+ "type": "text",
264
+ "primaryKey": false,
265
+ "notNull": true,
266
+ "autoincrement": false
267
+ },
268
+ "workflow": {
269
+ "name": "workflow",
270
+ "type": "text",
271
+ "primaryKey": false,
272
+ "notNull": true,
273
+ "autoincrement": false
274
+ },
275
+ "status": {
276
+ "name": "status",
277
+ "type": "text",
278
+ "primaryKey": false,
279
+ "notNull": true,
280
+ "autoincrement": false
281
+ },
282
+ "started_at": {
283
+ "name": "started_at",
284
+ "type": "integer",
285
+ "primaryKey": false,
286
+ "notNull": true,
287
+ "autoincrement": false
288
+ },
289
+ "ended_at": {
290
+ "name": "ended_at",
291
+ "type": "integer",
292
+ "primaryKey": false,
293
+ "notNull": false,
294
+ "autoincrement": false
295
+ },
296
+ "summary": {
297
+ "name": "summary",
298
+ "type": "text",
299
+ "primaryKey": false,
300
+ "notNull": false,
301
+ "autoincrement": false
302
+ }
303
+ },
304
+ "indexes": {},
305
+ "foreignKeys": {},
306
+ "compositePrimaryKeys": {},
307
+ "uniqueConstraints": {},
308
+ "checkConstraints": {}
309
+ },
310
+ "sessions": {
311
+ "name": "sessions",
312
+ "columns": {
313
+ "id": {
314
+ "name": "id",
315
+ "type": "text",
316
+ "primaryKey": true,
317
+ "notNull": true,
318
+ "autoincrement": false
319
+ },
320
+ "feature_id": {
321
+ "name": "feature_id",
322
+ "type": "text",
323
+ "primaryKey": false,
324
+ "notNull": true,
325
+ "autoincrement": false
326
+ },
327
+ "kind": {
328
+ "name": "kind",
329
+ "type": "text",
330
+ "primaryKey": false,
331
+ "notNull": true,
332
+ "autoincrement": false
333
+ },
334
+ "cc_session_id": {
335
+ "name": "cc_session_id",
336
+ "type": "text",
337
+ "primaryKey": false,
338
+ "notNull": false,
339
+ "autoincrement": false
340
+ },
341
+ "transcript_path": {
342
+ "name": "transcript_path",
343
+ "type": "text",
344
+ "primaryKey": false,
345
+ "notNull": false,
346
+ "autoincrement": false
347
+ },
348
+ "status": {
349
+ "name": "status",
350
+ "type": "text",
351
+ "primaryKey": false,
352
+ "notNull": true,
353
+ "autoincrement": false
354
+ },
355
+ "worktree_path": {
356
+ "name": "worktree_path",
357
+ "type": "text",
358
+ "primaryKey": false,
359
+ "notNull": true,
360
+ "autoincrement": false
361
+ }
362
+ },
363
+ "indexes": {},
364
+ "foreignKeys": {},
365
+ "compositePrimaryKeys": {},
366
+ "uniqueConstraints": {},
367
+ "checkConstraints": {}
368
+ },
369
+ "tickets": {
370
+ "name": "tickets",
371
+ "columns": {
372
+ "id": {
373
+ "name": "id",
374
+ "type": "text",
375
+ "primaryKey": true,
376
+ "notNull": true,
377
+ "autoincrement": false
378
+ },
379
+ "feature_id": {
380
+ "name": "feature_id",
381
+ "type": "text",
382
+ "primaryKey": false,
383
+ "notNull": true,
384
+ "autoincrement": false
385
+ },
386
+ "seq": {
387
+ "name": "seq",
388
+ "type": "integer",
389
+ "primaryKey": false,
390
+ "notNull": true,
391
+ "autoincrement": false
392
+ },
393
+ "title": {
394
+ "name": "title",
395
+ "type": "text",
396
+ "primaryKey": false,
397
+ "notNull": true,
398
+ "autoincrement": false
399
+ },
400
+ "goal": {
401
+ "name": "goal",
402
+ "type": "text",
403
+ "primaryKey": false,
404
+ "notNull": true,
405
+ "autoincrement": false
406
+ },
407
+ "context": {
408
+ "name": "context",
409
+ "type": "text",
410
+ "primaryKey": false,
411
+ "notNull": true,
412
+ "autoincrement": false
413
+ },
414
+ "acceptance_criteria": {
415
+ "name": "acceptance_criteria",
416
+ "type": "text",
417
+ "primaryKey": false,
418
+ "notNull": true,
419
+ "autoincrement": false
420
+ },
421
+ "seams": {
422
+ "name": "seams",
423
+ "type": "text",
424
+ "primaryKey": false,
425
+ "notNull": true,
426
+ "autoincrement": false
427
+ },
428
+ "blocked_by": {
429
+ "name": "blocked_by",
430
+ "type": "text",
431
+ "primaryKey": false,
432
+ "notNull": true,
433
+ "autoincrement": false
434
+ },
435
+ "status": {
436
+ "name": "status",
437
+ "type": "text",
438
+ "primaryKey": false,
439
+ "notNull": true,
440
+ "autoincrement": false
441
+ },
442
+ "commits": {
443
+ "name": "commits",
444
+ "type": "text",
445
+ "primaryKey": false,
446
+ "notNull": true,
447
+ "autoincrement": false
448
+ },
449
+ "error": {
450
+ "name": "error",
451
+ "type": "text",
452
+ "primaryKey": false,
453
+ "notNull": false,
454
+ "autoincrement": false
455
+ }
456
+ },
457
+ "indexes": {},
458
+ "foreignKeys": {},
459
+ "compositePrimaryKeys": {},
460
+ "uniqueConstraints": {},
461
+ "checkConstraints": {}
462
+ },
463
+ "waypoints": {
464
+ "name": "waypoints",
465
+ "columns": {
466
+ "id": {
467
+ "name": "id",
468
+ "type": "text",
469
+ "primaryKey": true,
470
+ "notNull": true,
471
+ "autoincrement": false
472
+ },
473
+ "feature_id": {
474
+ "name": "feature_id",
475
+ "type": "text",
476
+ "primaryKey": false,
477
+ "notNull": true,
478
+ "autoincrement": false
479
+ },
480
+ "seq": {
481
+ "name": "seq",
482
+ "type": "integer",
483
+ "primaryKey": false,
484
+ "notNull": true,
485
+ "autoincrement": false
486
+ },
487
+ "title": {
488
+ "name": "title",
489
+ "type": "text",
490
+ "primaryKey": false,
491
+ "notNull": true,
492
+ "autoincrement": false
493
+ },
494
+ "type": {
495
+ "name": "type",
496
+ "type": "text",
497
+ "primaryKey": false,
498
+ "notNull": true,
499
+ "autoincrement": false
500
+ },
501
+ "question": {
502
+ "name": "question",
503
+ "type": "text",
504
+ "primaryKey": false,
505
+ "notNull": true,
506
+ "autoincrement": false
507
+ },
508
+ "blocked_by": {
509
+ "name": "blocked_by",
510
+ "type": "text",
511
+ "primaryKey": false,
512
+ "notNull": true,
513
+ "autoincrement": false
514
+ },
515
+ "origin_waypoint_id": {
516
+ "name": "origin_waypoint_id",
517
+ "type": "text",
518
+ "primaryKey": false,
519
+ "notNull": false,
520
+ "autoincrement": false
521
+ },
522
+ "status": {
523
+ "name": "status",
524
+ "type": "text",
525
+ "primaryKey": false,
526
+ "notNull": true,
527
+ "autoincrement": false
528
+ },
529
+ "claimed_by": {
530
+ "name": "claimed_by",
531
+ "type": "text",
532
+ "primaryKey": false,
533
+ "notNull": false,
534
+ "autoincrement": false
535
+ },
536
+ "last_session_id": {
537
+ "name": "last_session_id",
538
+ "type": "text",
539
+ "primaryKey": false,
540
+ "notNull": false,
541
+ "autoincrement": false
542
+ },
543
+ "summary": {
544
+ "name": "summary",
545
+ "type": "text",
546
+ "primaryKey": false,
547
+ "notNull": false,
548
+ "autoincrement": false
549
+ }
550
+ },
551
+ "indexes": {},
552
+ "foreignKeys": {},
553
+ "compositePrimaryKeys": {},
554
+ "uniqueConstraints": {},
555
+ "checkConstraints": {}
556
+ }
557
+ },
558
+ "views": {},
559
+ "enums": {},
560
+ "_meta": {
561
+ "schemas": {},
562
+ "tables": {},
563
+ "columns": {}
564
+ },
565
+ "internal": {
566
+ "indexes": {}
567
+ }
568
+ }