instar 0.23.11 → 0.23.13
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.
- package/dist/commands/server.d.ts.map +1 -1
- package/dist/commands/server.js +5 -2
- package/dist/commands/server.js.map +1 -1
- package/dist/lifeline/TelegramLifeline.d.ts.map +1 -1
- package/dist/lifeline/TelegramLifeline.js +19 -1
- package/dist/lifeline/TelegramLifeline.js.map +1 -1
- package/dist/messaging/TelegramAdapter.d.ts +2 -0
- package/dist/messaging/TelegramAdapter.d.ts.map +1 -1
- package/dist/messaging/TelegramAdapter.js +2 -0
- package/dist/messaging/TelegramAdapter.js.map +1 -1
- package/dist/monitoring/StallTriageNurse.d.ts +11 -0
- package/dist/monitoring/StallTriageNurse.d.ts.map +1 -1
- package/dist/monitoring/StallTriageNurse.js +38 -0
- package/dist/monitoring/StallTriageNurse.js.map +1 -1
- package/dist/monitoring/StallTriageNurse.types.d.ts +9 -0
- package/dist/monitoring/StallTriageNurse.types.d.ts.map +1 -1
- package/dist/publishing/TelegraphService.d.ts +4 -0
- package/dist/publishing/TelegraphService.d.ts.map +1 -1
- package/dist/publishing/TelegraphService.js +34 -19
- package/dist/publishing/TelegraphService.js.map +1 -1
- package/dist/server/routes.d.ts.map +1 -1
- package/dist/server/routes.js +39 -1
- package/dist/server/routes.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +47 -47
- package/upgrades/0.23.12.md +30 -0
- package/upgrades/0.23.13.md +25 -0
- package/upgrades/NEXT.md +9 -21
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "./builtin-manifest.schema.json",
|
|
3
3
|
"schemaVersion": 1,
|
|
4
|
-
"generatedAt": "2026-03-
|
|
5
|
-
"instarVersion": "0.23.
|
|
4
|
+
"generatedAt": "2026-03-19T21:30:47.368Z",
|
|
5
|
+
"instarVersion": "0.23.13",
|
|
6
6
|
"entryCount": 170,
|
|
7
7
|
"entries": {
|
|
8
8
|
"hook:session-start": {
|
|
@@ -311,7 +311,7 @@
|
|
|
311
311
|
"type": "route-group",
|
|
312
312
|
"domain": "monitoring",
|
|
313
313
|
"sourcePath": "src/server/routes.ts",
|
|
314
|
-
"contentHash": "
|
|
314
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
315
315
|
"since": "2025-01-01"
|
|
316
316
|
},
|
|
317
317
|
"route-group:agents": {
|
|
@@ -319,7 +319,7 @@
|
|
|
319
319
|
"type": "route-group",
|
|
320
320
|
"domain": "sessions",
|
|
321
321
|
"sourcePath": "src/server/routes.ts",
|
|
322
|
-
"contentHash": "
|
|
322
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
323
323
|
"since": "2025-01-01"
|
|
324
324
|
},
|
|
325
325
|
"route-group:backups": {
|
|
@@ -327,7 +327,7 @@
|
|
|
327
327
|
"type": "route-group",
|
|
328
328
|
"domain": "operations",
|
|
329
329
|
"sourcePath": "src/server/routes.ts",
|
|
330
|
-
"contentHash": "
|
|
330
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
331
331
|
"since": "2025-01-01"
|
|
332
332
|
},
|
|
333
333
|
"route-group:git": {
|
|
@@ -335,7 +335,7 @@
|
|
|
335
335
|
"type": "route-group",
|
|
336
336
|
"domain": "coordination",
|
|
337
337
|
"sourcePath": "src/server/routes.ts",
|
|
338
|
-
"contentHash": "
|
|
338
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
339
339
|
"since": "2025-01-01"
|
|
340
340
|
},
|
|
341
341
|
"route-group:memory": {
|
|
@@ -343,7 +343,7 @@
|
|
|
343
343
|
"type": "route-group",
|
|
344
344
|
"domain": "memory",
|
|
345
345
|
"sourcePath": "src/server/routes.ts",
|
|
346
|
-
"contentHash": "
|
|
346
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
347
347
|
"since": "2025-01-01"
|
|
348
348
|
},
|
|
349
349
|
"route-group:semantic": {
|
|
@@ -351,7 +351,7 @@
|
|
|
351
351
|
"type": "route-group",
|
|
352
352
|
"domain": "memory",
|
|
353
353
|
"sourcePath": "src/server/routes.ts",
|
|
354
|
-
"contentHash": "
|
|
354
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
355
355
|
"since": "2025-01-01"
|
|
356
356
|
},
|
|
357
357
|
"route-group:status": {
|
|
@@ -359,7 +359,7 @@
|
|
|
359
359
|
"type": "route-group",
|
|
360
360
|
"domain": "monitoring",
|
|
361
361
|
"sourcePath": "src/server/routes.ts",
|
|
362
|
-
"contentHash": "
|
|
362
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
363
363
|
"since": "2025-01-01"
|
|
364
364
|
},
|
|
365
365
|
"route-group:capabilities": {
|
|
@@ -367,7 +367,7 @@
|
|
|
367
367
|
"type": "route-group",
|
|
368
368
|
"domain": "mapping",
|
|
369
369
|
"sourcePath": "src/server/routes.ts",
|
|
370
|
-
"contentHash": "
|
|
370
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
371
371
|
"since": "2025-01-01"
|
|
372
372
|
},
|
|
373
373
|
"route-group:project-map": {
|
|
@@ -375,7 +375,7 @@
|
|
|
375
375
|
"type": "route-group",
|
|
376
376
|
"domain": "mapping",
|
|
377
377
|
"sourcePath": "src/server/routes.ts",
|
|
378
|
-
"contentHash": "
|
|
378
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
379
379
|
"since": "2025-01-01"
|
|
380
380
|
},
|
|
381
381
|
"route-group:coherence": {
|
|
@@ -383,7 +383,7 @@
|
|
|
383
383
|
"type": "route-group",
|
|
384
384
|
"domain": "coherence",
|
|
385
385
|
"sourcePath": "src/server/routes.ts",
|
|
386
|
-
"contentHash": "
|
|
386
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
387
387
|
"since": "2025-01-01"
|
|
388
388
|
},
|
|
389
389
|
"route-group:topic-bindings": {
|
|
@@ -391,7 +391,7 @@
|
|
|
391
391
|
"type": "route-group",
|
|
392
392
|
"domain": "sessions",
|
|
393
393
|
"sourcePath": "src/server/routes.ts",
|
|
394
|
-
"contentHash": "
|
|
394
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
395
395
|
"since": "2025-01-01"
|
|
396
396
|
},
|
|
397
397
|
"route-group:context": {
|
|
@@ -399,7 +399,7 @@
|
|
|
399
399
|
"type": "route-group",
|
|
400
400
|
"domain": "context",
|
|
401
401
|
"sourcePath": "src/server/routes.ts",
|
|
402
|
-
"contentHash": "
|
|
402
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
403
403
|
"since": "2025-01-01"
|
|
404
404
|
},
|
|
405
405
|
"route-group:scope-coherence": {
|
|
@@ -407,7 +407,7 @@
|
|
|
407
407
|
"type": "route-group",
|
|
408
408
|
"domain": "coherence",
|
|
409
409
|
"sourcePath": "src/server/routes.ts",
|
|
410
|
-
"contentHash": "
|
|
410
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
411
411
|
"since": "2025-01-01"
|
|
412
412
|
},
|
|
413
413
|
"route-group:canonical-state": {
|
|
@@ -415,7 +415,7 @@
|
|
|
415
415
|
"type": "route-group",
|
|
416
416
|
"domain": "state",
|
|
417
417
|
"sourcePath": "src/server/routes.ts",
|
|
418
|
-
"contentHash": "
|
|
418
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
419
419
|
"since": "2025-01-01"
|
|
420
420
|
},
|
|
421
421
|
"route-group:ci": {
|
|
@@ -423,7 +423,7 @@
|
|
|
423
423
|
"type": "route-group",
|
|
424
424
|
"domain": "monitoring",
|
|
425
425
|
"sourcePath": "src/server/routes.ts",
|
|
426
|
-
"contentHash": "
|
|
426
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
427
427
|
"since": "2025-01-01"
|
|
428
428
|
},
|
|
429
429
|
"route-group:sessions": {
|
|
@@ -431,7 +431,7 @@
|
|
|
431
431
|
"type": "route-group",
|
|
432
432
|
"domain": "sessions",
|
|
433
433
|
"sourcePath": "src/server/routes.ts",
|
|
434
|
-
"contentHash": "
|
|
434
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
435
435
|
"since": "2025-01-01"
|
|
436
436
|
},
|
|
437
437
|
"route-group:jobs": {
|
|
@@ -439,7 +439,7 @@
|
|
|
439
439
|
"type": "route-group",
|
|
440
440
|
"domain": "scheduling",
|
|
441
441
|
"sourcePath": "src/server/routes.ts",
|
|
442
|
-
"contentHash": "
|
|
442
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
443
443
|
"since": "2025-01-01"
|
|
444
444
|
},
|
|
445
445
|
"route-group:skip-ledger": {
|
|
@@ -447,7 +447,7 @@
|
|
|
447
447
|
"type": "route-group",
|
|
448
448
|
"domain": "scheduling",
|
|
449
449
|
"sourcePath": "src/server/routes.ts",
|
|
450
|
-
"contentHash": "
|
|
450
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
451
451
|
"since": "2025-01-01"
|
|
452
452
|
},
|
|
453
453
|
"route-group:telegram": {
|
|
@@ -455,7 +455,7 @@
|
|
|
455
455
|
"type": "route-group",
|
|
456
456
|
"domain": "communication",
|
|
457
457
|
"sourcePath": "src/server/routes.ts",
|
|
458
|
-
"contentHash": "
|
|
458
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
459
459
|
"since": "2025-01-01"
|
|
460
460
|
},
|
|
461
461
|
"route-group:attention": {
|
|
@@ -463,7 +463,7 @@
|
|
|
463
463
|
"type": "route-group",
|
|
464
464
|
"domain": "communication",
|
|
465
465
|
"sourcePath": "src/server/routes.ts",
|
|
466
|
-
"contentHash": "
|
|
466
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
467
467
|
"since": "2025-01-01"
|
|
468
468
|
},
|
|
469
469
|
"route-group:relationships": {
|
|
@@ -471,7 +471,7 @@
|
|
|
471
471
|
"type": "route-group",
|
|
472
472
|
"domain": "relationships",
|
|
473
473
|
"sourcePath": "src/server/routes.ts",
|
|
474
|
-
"contentHash": "
|
|
474
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
475
475
|
"since": "2025-01-01"
|
|
476
476
|
},
|
|
477
477
|
"route-group:feedback": {
|
|
@@ -479,7 +479,7 @@
|
|
|
479
479
|
"type": "route-group",
|
|
480
480
|
"domain": "feedback",
|
|
481
481
|
"sourcePath": "src/server/routes.ts",
|
|
482
|
-
"contentHash": "
|
|
482
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
483
483
|
"since": "2025-01-01"
|
|
484
484
|
},
|
|
485
485
|
"route-group:updates": {
|
|
@@ -487,7 +487,7 @@
|
|
|
487
487
|
"type": "route-group",
|
|
488
488
|
"domain": "updates",
|
|
489
489
|
"sourcePath": "src/server/routes.ts",
|
|
490
|
-
"contentHash": "
|
|
490
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
491
491
|
"since": "2025-01-01"
|
|
492
492
|
},
|
|
493
493
|
"route-group:dispatches": {
|
|
@@ -495,7 +495,7 @@
|
|
|
495
495
|
"type": "route-group",
|
|
496
496
|
"domain": "dispatches",
|
|
497
497
|
"sourcePath": "src/server/routes.ts",
|
|
498
|
-
"contentHash": "
|
|
498
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
499
499
|
"since": "2025-01-01"
|
|
500
500
|
},
|
|
501
501
|
"route-group:quota": {
|
|
@@ -503,7 +503,7 @@
|
|
|
503
503
|
"type": "route-group",
|
|
504
504
|
"domain": "monitoring",
|
|
505
505
|
"sourcePath": "src/server/routes.ts",
|
|
506
|
-
"contentHash": "
|
|
506
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
507
507
|
"since": "2025-01-01"
|
|
508
508
|
},
|
|
509
509
|
"route-group:publishing": {
|
|
@@ -511,7 +511,7 @@
|
|
|
511
511
|
"type": "route-group",
|
|
512
512
|
"domain": "publishing",
|
|
513
513
|
"sourcePath": "src/server/routes.ts",
|
|
514
|
-
"contentHash": "
|
|
514
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
515
515
|
"since": "2025-01-01"
|
|
516
516
|
},
|
|
517
517
|
"route-group:private-views": {
|
|
@@ -519,7 +519,7 @@
|
|
|
519
519
|
"type": "route-group",
|
|
520
520
|
"domain": "publishing",
|
|
521
521
|
"sourcePath": "src/server/routes.ts",
|
|
522
|
-
"contentHash": "
|
|
522
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
523
523
|
"since": "2025-01-01"
|
|
524
524
|
},
|
|
525
525
|
"route-group:tunnel": {
|
|
@@ -527,7 +527,7 @@
|
|
|
527
527
|
"type": "route-group",
|
|
528
528
|
"domain": "networking",
|
|
529
529
|
"sourcePath": "src/server/routes.ts",
|
|
530
|
-
"contentHash": "
|
|
530
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
531
531
|
"since": "2025-01-01"
|
|
532
532
|
},
|
|
533
533
|
"route-group:events": {
|
|
@@ -535,7 +535,7 @@
|
|
|
535
535
|
"type": "route-group",
|
|
536
536
|
"domain": "networking",
|
|
537
537
|
"sourcePath": "src/server/routes.ts",
|
|
538
|
-
"contentHash": "
|
|
538
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
539
539
|
"since": "2025-01-01"
|
|
540
540
|
},
|
|
541
541
|
"route-group:evolution": {
|
|
@@ -543,7 +543,7 @@
|
|
|
543
543
|
"type": "route-group",
|
|
544
544
|
"domain": "evolution",
|
|
545
545
|
"sourcePath": "src/server/routes.ts",
|
|
546
|
-
"contentHash": "
|
|
546
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
547
547
|
"since": "2025-01-01"
|
|
548
548
|
},
|
|
549
549
|
"route-group:watchdog": {
|
|
@@ -551,7 +551,7 @@
|
|
|
551
551
|
"type": "route-group",
|
|
552
552
|
"domain": "monitoring",
|
|
553
553
|
"sourcePath": "src/server/routes.ts",
|
|
554
|
-
"contentHash": "
|
|
554
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
555
555
|
"since": "2025-01-01"
|
|
556
556
|
},
|
|
557
557
|
"route-group:topic-memory": {
|
|
@@ -559,7 +559,7 @@
|
|
|
559
559
|
"type": "route-group",
|
|
560
560
|
"domain": "memory",
|
|
561
561
|
"sourcePath": "src/server/routes.ts",
|
|
562
|
-
"contentHash": "
|
|
562
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
563
563
|
"since": "2025-01-01"
|
|
564
564
|
},
|
|
565
565
|
"route-group:state-sync": {
|
|
@@ -567,7 +567,7 @@
|
|
|
567
567
|
"type": "route-group",
|
|
568
568
|
"domain": "coordination",
|
|
569
569
|
"sourcePath": "src/server/routes.ts",
|
|
570
|
-
"contentHash": "
|
|
570
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
571
571
|
"since": "2025-01-01"
|
|
572
572
|
},
|
|
573
573
|
"route-group:intent": {
|
|
@@ -575,7 +575,7 @@
|
|
|
575
575
|
"type": "route-group",
|
|
576
576
|
"domain": "intent",
|
|
577
577
|
"sourcePath": "src/server/routes.ts",
|
|
578
|
-
"contentHash": "
|
|
578
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
579
579
|
"since": "2025-01-01"
|
|
580
580
|
},
|
|
581
581
|
"route-group:triage": {
|
|
@@ -583,7 +583,7 @@
|
|
|
583
583
|
"type": "route-group",
|
|
584
584
|
"domain": "safety",
|
|
585
585
|
"sourcePath": "src/server/routes.ts",
|
|
586
|
-
"contentHash": "
|
|
586
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
587
587
|
"since": "2025-01-01"
|
|
588
588
|
},
|
|
589
589
|
"route-group:operations": {
|
|
@@ -591,7 +591,7 @@
|
|
|
591
591
|
"type": "route-group",
|
|
592
592
|
"domain": "safety",
|
|
593
593
|
"sourcePath": "src/server/routes.ts",
|
|
594
|
-
"contentHash": "
|
|
594
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
595
595
|
"since": "2025-01-01"
|
|
596
596
|
},
|
|
597
597
|
"route-group:sentinel": {
|
|
@@ -599,7 +599,7 @@
|
|
|
599
599
|
"type": "route-group",
|
|
600
600
|
"domain": "safety",
|
|
601
601
|
"sourcePath": "src/server/routes.ts",
|
|
602
|
-
"contentHash": "
|
|
602
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
603
603
|
"since": "2025-01-01"
|
|
604
604
|
},
|
|
605
605
|
"route-group:trust": {
|
|
@@ -607,7 +607,7 @@
|
|
|
607
607
|
"type": "route-group",
|
|
608
608
|
"domain": "safety",
|
|
609
609
|
"sourcePath": "src/server/routes.ts",
|
|
610
|
-
"contentHash": "
|
|
610
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
611
611
|
"since": "2025-01-01"
|
|
612
612
|
},
|
|
613
613
|
"route-group:monitoring": {
|
|
@@ -615,7 +615,7 @@
|
|
|
615
615
|
"type": "route-group",
|
|
616
616
|
"domain": "monitoring",
|
|
617
617
|
"sourcePath": "src/server/routes.ts",
|
|
618
|
-
"contentHash": "
|
|
618
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
619
619
|
"since": "2025-01-01"
|
|
620
620
|
},
|
|
621
621
|
"route-group:commitments": {
|
|
@@ -623,7 +623,7 @@
|
|
|
623
623
|
"type": "route-group",
|
|
624
624
|
"domain": "commitments",
|
|
625
625
|
"sourcePath": "src/server/routes.ts",
|
|
626
|
-
"contentHash": "
|
|
626
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
627
627
|
"since": "2025-01-01"
|
|
628
628
|
},
|
|
629
629
|
"route-group:episodes": {
|
|
@@ -631,7 +631,7 @@
|
|
|
631
631
|
"type": "route-group",
|
|
632
632
|
"domain": "memory",
|
|
633
633
|
"sourcePath": "src/server/routes.ts",
|
|
634
|
-
"contentHash": "
|
|
634
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
635
635
|
"since": "2025-01-01"
|
|
636
636
|
},
|
|
637
637
|
"route-group:messages": {
|
|
@@ -639,7 +639,7 @@
|
|
|
639
639
|
"type": "route-group",
|
|
640
640
|
"domain": "coordination",
|
|
641
641
|
"sourcePath": "src/server/routes.ts",
|
|
642
|
-
"contentHash": "
|
|
642
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
643
643
|
"since": "2025-01-01"
|
|
644
644
|
},
|
|
645
645
|
"route-group:system-reviews": {
|
|
@@ -647,7 +647,7 @@
|
|
|
647
647
|
"type": "route-group",
|
|
648
648
|
"domain": "monitoring",
|
|
649
649
|
"sourcePath": "src/server/routes.ts",
|
|
650
|
-
"contentHash": "
|
|
650
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
651
651
|
"since": "2025-01-01"
|
|
652
652
|
},
|
|
653
653
|
"route-group:machine-mesh": {
|
|
@@ -663,7 +663,7 @@
|
|
|
663
663
|
"type": "route-group",
|
|
664
664
|
"domain": "security",
|
|
665
665
|
"sourcePath": "src/server/routes.ts",
|
|
666
|
-
"contentHash": "
|
|
666
|
+
"contentHash": "b422a1d7c8b9152d4aeaff02c086c8722415bb15e50768bdf7666db094d3f7b2",
|
|
667
667
|
"since": "2025-01-01"
|
|
668
668
|
},
|
|
669
669
|
"cli:init": {
|
|
@@ -1335,7 +1335,7 @@
|
|
|
1335
1335
|
"type": "subsystem",
|
|
1336
1336
|
"domain": "communication",
|
|
1337
1337
|
"sourcePath": "src/lifeline/TelegramLifeline.ts",
|
|
1338
|
-
"contentHash": "
|
|
1338
|
+
"contentHash": "58649005f188f7fe655223a7cf4e9e83998ab7af72e5bc1bc94a97c42bfe553f",
|
|
1339
1339
|
"since": "2025-01-01"
|
|
1340
1340
|
},
|
|
1341
1341
|
"subsystem:orphan-process-reaper": {
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Upgrade Guide — vNEXT
|
|
2
|
+
|
|
3
|
+
<!-- bump: patch -->
|
|
4
|
+
<!-- Valid values: patch, minor, major -->
|
|
5
|
+
<!-- patch = bug fixes, refactors, test additions, doc updates -->
|
|
6
|
+
<!-- minor = new features, new APIs, new capabilities (backwards-compatible) -->
|
|
7
|
+
<!-- major = breaking changes to existing APIs or behavior -->
|
|
8
|
+
|
|
9
|
+
## What Changed
|
|
10
|
+
|
|
11
|
+
Added sleep/wake recovery infrastructure for macOS environments. When a machine sleeps and wakes, SQLite WAL locks can go stale and tunnel connections drop silently. This release adds:
|
|
12
|
+
|
|
13
|
+
- **WAL checkpoint methods** on TopicMemory and SemanticMemory — `checkpoint()` flushes stale WAL locks after macOS sleep/wake, preventing "database is locked" errors that previously required manual restart.
|
|
14
|
+
- **TunnelManager recovery** — `forceStop()` cleanly tears down zombie tunnel processes, and `enableAutoReconnect()` provides exponential-backoff reconnection when tunnels drop during sleep/wake cycles.
|
|
15
|
+
- **TelegramAdapter resilience** — catches silent connection failures from the Telegram API that occur after network state changes, with automatic retry logic.
|
|
16
|
+
|
|
17
|
+
These changes target the most common failure mode for agents running on developer laptops: machine sleep causing cascading failures across memory, tunnels, and messaging.
|
|
18
|
+
|
|
19
|
+
## What to Tell Your User
|
|
20
|
+
|
|
21
|
+
- **Sleep/wake recovery**: "If your machine goes to sleep and wakes back up, I can now recover automatically — my database connections, tunnels, and messaging all reconnect without needing a restart."
|
|
22
|
+
|
|
23
|
+
## Summary of New Capabilities
|
|
24
|
+
|
|
25
|
+
| Capability | How to Use |
|
|
26
|
+
|-----------|-----------|
|
|
27
|
+
| WAL checkpoint after sleep/wake | Automatic — called by StallTriageNurse on stall detection |
|
|
28
|
+
| Tunnel auto-reconnect | Automatic with exponential backoff |
|
|
29
|
+
| Tunnel force-stop | Available via TunnelManager API for manual recovery |
|
|
30
|
+
| Telegram silent-failure catch | Automatic — adapter retries on connection loss |
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Upgrade Guide — vNEXT
|
|
2
|
+
|
|
3
|
+
<!-- bump: patch -->
|
|
4
|
+
|
|
5
|
+
## What Changed
|
|
6
|
+
|
|
7
|
+
Fixed a critical gap in the Telegram lifeline's API call handling. The lifeline's `apiCall` method had no handling for HTTP 429 (Too Many Requests) responses from the Telegram API. When Telegram rate-limited the bot, the lifeline threw a generic error, but callers kept sending more messages — each hitting the rate limit again, generating 13,700+ error lines in stderr and creating a cascade of failed requests.
|
|
8
|
+
|
|
9
|
+
The fix adds the same retry_after-aware handling that TelegramAdapter already has:
|
|
10
|
+
- Parse the `retry_after` field from Telegram's 429 response
|
|
11
|
+
- Wait the specified duration before retrying
|
|
12
|
+
- Retry up to 3 times with proper backoff
|
|
13
|
+
- Throw a clear error after max retries instead of cascading
|
|
14
|
+
|
|
15
|
+
This was the root cause of massive stderr spam during message bursts (e.g., server restart notifications, queue ack confirmations).
|
|
16
|
+
|
|
17
|
+
## What to Tell Your User
|
|
18
|
+
|
|
19
|
+
- **Rate limit handling**: "My emergency communication channel is now smarter about Telegram's rate limits. If Telegram asks me to slow down, I'll wait and retry instead of flooding error logs. This means more reliable message delivery during busy periods."
|
|
20
|
+
|
|
21
|
+
## Summary of New Capabilities
|
|
22
|
+
|
|
23
|
+
| Capability | How to Use |
|
|
24
|
+
|-----------|-----------|
|
|
25
|
+
| Lifeline 429 rate-limit handling | Automatic — retries with backoff on Telegram rate limits |
|
package/upgrades/NEXT.md
CHANGED
|
@@ -1,35 +1,23 @@
|
|
|
1
1
|
# Upgrade Guide — vNEXT
|
|
2
2
|
|
|
3
3
|
<!-- bump: patch -->
|
|
4
|
-
<!-- Valid values: patch, minor, major -->
|
|
5
|
-
<!-- patch = bug fixes, refactors, test additions, doc updates -->
|
|
6
|
-
<!-- minor = new features, new APIs, new capabilities (backwards-compatible) -->
|
|
7
|
-
<!-- major = breaking changes to existing APIs or behavior -->
|
|
8
4
|
|
|
9
5
|
## What Changed
|
|
10
6
|
|
|
11
|
-
|
|
12
|
-
|
|
7
|
+
- **Dashboard link auto-refresh**: New `POST /telegram/dashboard-refresh` endpoint triggers the existing dashboard URL edit-in-place logic. Paired with a new `dashboard-link-refresh` job that runs every 5 minutes (no LLM, just a curl). If the tunnel URL hasn't changed, Telegram silently skips the edit.
|
|
8
|
+
- **Lifeline 429 handling**: The `apiCall` helper in lifeline now recognizes HTTP 429 (rate limit) responses and backs off automatically instead of treating them as hard failures.
|
|
9
|
+
- **Telegraph confirmation gate**: Publishing to Telegraph now requires explicit confirmation, and each page gets its own access token for tracking.
|
|
10
|
+
- **CI pipeline reliability**: Publish workflow now derives the next version from npm (not package.json), eliminating version collision races. CI gate uses the stable test suite, matching the main CI workflow.
|
|
13
11
|
|
|
14
12
|
## What to Tell Your User
|
|
15
13
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
<!-- Focus on what THEY can now do, not internal plumbing. -->
|
|
19
|
-
<!-- -->
|
|
20
|
-
<!-- PROHIBITED in this section (will fail validation): -->
|
|
21
|
-
<!-- camelCase config keys: silentReject, maxRetries, telegramNotify -->
|
|
22
|
-
<!-- Inline code backtick references like silentReject: false -->
|
|
23
|
-
<!-- Fenced code blocks -->
|
|
24
|
-
<!-- Instructions to edit files or run commands -->
|
|
25
|
-
<!-- -->
|
|
26
|
-
<!-- CORRECT style: "I can turn that on for you" not "set X to false" -->
|
|
27
|
-
<!-- The agent relays this to their user — keep it human. -->
|
|
28
|
-
|
|
29
|
-
- **[Feature name]**: "[Brief, friendly description of what this means for the user]"
|
|
14
|
+
- **"Your dashboard link stays fresh now"**: The pinned dashboard message in Telegram auto-updates every 5 minutes. If the tunnel URL changes (like after a restart), the link fixes itself — no need to ask for a new one.
|
|
15
|
+
- **"Publishing is more reliable"**: Telegraph publishing now asks for confirmation before going live, and the deploy pipeline has been hardened against the version collision issues that were causing failed releases.
|
|
30
16
|
|
|
31
17
|
## Summary of New Capabilities
|
|
32
18
|
|
|
33
19
|
| Capability | How to Use |
|
|
34
20
|
|-----------|-----------|
|
|
35
|
-
|
|
|
21
|
+
| Dashboard link refresh | Automatic via job, or `POST /telegram/dashboard-refresh` |
|
|
22
|
+
| Telegraph confirmation gate | Automatic — prompts before publishing |
|
|
23
|
+
| Rate-limit backoff | Automatic in lifeline API calls |
|