openclaw-telegram-manager 2.5.7 → 2.6.1
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/README.md +13 -3
- package/dist/commands/daily-report.js +14 -14
- package/dist/commands/daily-report.js.map +1 -1
- package/dist/commands/doctor-all.d.ts +34 -0
- package/dist/commands/doctor-all.d.ts.map +1 -1
- package/dist/commands/doctor-all.js +189 -42
- package/dist/commands/doctor-all.js.map +1 -1
- package/dist/commands/init.d.ts +2 -2
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +4 -5
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/status.js +3 -3
- package/dist/commands/status.js.map +1 -1
- package/dist/lib/include-generator.d.ts.map +1 -1
- package/dist/lib/include-generator.js +20 -7
- package/dist/lib/include-generator.js.map +1 -1
- package/dist/lib/registry.d.ts.map +1 -1
- package/dist/lib/registry.js +11 -0
- package/dist/lib/registry.js.map +1 -1
- package/dist/lib/telegram.d.ts +1 -1
- package/dist/lib/telegram.d.ts.map +1 -1
- package/dist/lib/telegram.js +6 -8
- package/dist/lib/telegram.js.map +1 -1
- package/dist/lib/types.d.ts +5 -6
- package/dist/lib/types.d.ts.map +1 -1
- package/dist/lib/types.js +4 -4
- package/dist/lib/types.js.map +1 -1
- package/dist/plugin.js +243 -81
- package/dist/setup.js +27 -2
- package/dist/setup.js.map +1 -1
- package/dist/tool.js +2 -2
- package/dist/tool.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -35,7 +35,7 @@ OpenClaw's automatic scanner may flag `child_process` and `process.env` usage. T
|
|
|
35
35
|
## How it works
|
|
36
36
|
|
|
37
37
|
1. **One-time setup per topic**
|
|
38
|
-
Open a Telegram topic and type `/tm init`. Pick a type (Coding, Research, Marketing, or
|
|
38
|
+
Open a Telegram topic and type `/tm init`. Pick a type (Coding, Research, Marketing, or General). Done.
|
|
39
39
|
|
|
40
40
|
2. **Everything else is automatic**
|
|
41
41
|
The AI reads and updates the topic's files on its own — tracking progress, TODOs, decisions, and learnings. When context gets compacted or the AI resets, it re-reads these files and continues where it left off.
|
|
@@ -45,6 +45,16 @@ OpenClaw's automatic scanner may flag `child_process` and `process.env` usage. T
|
|
|
45
45
|
|
|
46
46
|
You can also skip the interactive flow: `/tm init my-project coding`
|
|
47
47
|
|
|
48
|
+
## Topic memory vs. workspace memory
|
|
49
|
+
|
|
50
|
+
OpenClaw has its own workspace-level memory (learnings, preferences, patterns). This plugin adds a **per-topic layer on top**.
|
|
51
|
+
|
|
52
|
+
The AI treats these as a hierarchy:
|
|
53
|
+
1. **Topic files come first** — they define what the topic is working on, its tasks, progress, and history. After a reset, the AI reads these before anything else.
|
|
54
|
+
2. **Workspace memory is secondary** — general learnings and user preferences still apply (coding style, past mistakes), but they don't override the topic's current state.
|
|
55
|
+
|
|
56
|
+
In practice: if the AI resets and you ask "what are we working on?", it answers from the topic's status and tasks — not from unrelated projects that might exist elsewhere in the workspace.
|
|
57
|
+
|
|
48
58
|
## What gets tracked
|
|
49
59
|
|
|
50
60
|
Each topic gets its own folder with files the AI maintains automatically:
|
|
@@ -65,6 +75,8 @@ Depending on the topic type, extra files are added:
|
|
|
65
75
|
- **Research** adds `SOURCES.md` and `FINDINGS.md`
|
|
66
76
|
- **Marketing** adds `CAMPAIGNS.md` and `METRICS.md`
|
|
67
77
|
|
|
78
|
+
These files are committed to your workspace git repo so they persist and have history. Operational files (the internal registry and audit log) are automatically added to `.gitignore` during setup.
|
|
79
|
+
|
|
68
80
|
## Optional commands
|
|
69
81
|
|
|
70
82
|
You don't need any of these — everything runs automatically. They're there if you want to check on things or make changes.
|
|
@@ -87,8 +99,6 @@ You don't need any of these — everything runs automatically. They're there if
|
|
|
87
99
|
| `/tm snooze <duration>` | Pause health checks (e.g. `7d`, `30d`) |
|
|
88
100
|
| `/tm archive` | Archive a topic |
|
|
89
101
|
| `/tm unarchive` | Bring back an archived topic |
|
|
90
|
-
| `/tm upgrade` | Update topic files to the latest version |
|
|
91
|
-
| `/tm sync` | Fix config if something is out of sync |
|
|
92
102
|
|
|
93
103
|
**Autopilot** (enabled by default)
|
|
94
104
|
|
|
@@ -89,16 +89,16 @@ export function readFileOrNull(filePath) {
|
|
|
89
89
|
}
|
|
90
90
|
export function extractDoneSection(statusContent) {
|
|
91
91
|
if (!statusContent)
|
|
92
|
-
return '
|
|
92
|
+
return 'No status available yet.';
|
|
93
93
|
const match = statusContent.match(/^##\s*Last done\s*\(UTC\)\s*\n([\s\S]*?)(?=\n##\s|\n*$)/im);
|
|
94
94
|
if (!match)
|
|
95
|
-
return '
|
|
95
|
+
return 'No recent activity found.';
|
|
96
96
|
const text = match[1]?.trim();
|
|
97
|
-
return text || '
|
|
97
|
+
return text || 'Empty.';
|
|
98
98
|
}
|
|
99
99
|
export function extractTodayLearnings(learningsContent) {
|
|
100
100
|
if (!learningsContent)
|
|
101
|
-
return '
|
|
101
|
+
return 'No learnings recorded yet.';
|
|
102
102
|
const today = new Date().toISOString().slice(0, 10);
|
|
103
103
|
const lines = learningsContent.split('\n');
|
|
104
104
|
const todayLines = [];
|
|
@@ -115,35 +115,35 @@ export function extractTodayLearnings(learningsContent) {
|
|
|
115
115
|
todayLines.push(line);
|
|
116
116
|
}
|
|
117
117
|
}
|
|
118
|
-
return todayLines.length > 0 ? todayLines.join('\n') : '
|
|
118
|
+
return todayLines.length > 0 ? todayLines.join('\n') : 'None today.';
|
|
119
119
|
}
|
|
120
120
|
export function extractBlockers(todoContent) {
|
|
121
121
|
if (!todoContent)
|
|
122
|
-
return '
|
|
122
|
+
return 'No tasks recorded yet.';
|
|
123
123
|
const lines = todoContent.split('\n');
|
|
124
124
|
const blockerLines = lines.filter((l) => /\[BLOCKED\]/i.test(l) || /\bblocked\b/i.test(l));
|
|
125
|
-
return blockerLines.length > 0 ? blockerLines.join('\n') : '
|
|
125
|
+
return blockerLines.length > 0 ? blockerLines.join('\n') : 'None.';
|
|
126
126
|
}
|
|
127
127
|
export function extractNextActions(statusContent) {
|
|
128
128
|
if (!statusContent)
|
|
129
|
-
return '
|
|
129
|
+
return 'No status available yet.';
|
|
130
130
|
const match = statusContent.match(/^##\s*Next (?:3 )?actions(?: \(now\))?\s*\n([\s\S]*?)(?=\n##\s|\n*$)/im);
|
|
131
131
|
if (!match)
|
|
132
|
-
return '
|
|
132
|
+
return 'None yet.';
|
|
133
133
|
const text = match[1]?.trim();
|
|
134
|
-
return text || '
|
|
134
|
+
return text || 'None yet.';
|
|
135
135
|
}
|
|
136
136
|
export function extractUpcoming(statusContent) {
|
|
137
137
|
if (!statusContent)
|
|
138
|
-
return '
|
|
138
|
+
return 'No status available yet.';
|
|
139
139
|
const match = statusContent.match(/^##\s*Upcoming actions\s*\n([\s\S]*?)(?=\n##\s|\n*$)/im);
|
|
140
140
|
if (!match)
|
|
141
|
-
return '
|
|
141
|
+
return 'None yet.';
|
|
142
142
|
const text = match[1]?.trim();
|
|
143
|
-
return text || '
|
|
143
|
+
return text || 'None yet.';
|
|
144
144
|
}
|
|
145
145
|
export function computeHealth(lastMessageAt, statusContent, blockers) {
|
|
146
|
-
if (blockers && blockers !== '
|
|
146
|
+
if (blockers && blockers !== 'None.' && blockers !== 'No tasks recorded yet.') {
|
|
147
147
|
return 'blocked';
|
|
148
148
|
}
|
|
149
149
|
if (!lastMessageAt)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daily-report.js","sourceRoot":"","sources":["../../src/commands/daily-report.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"daily-report.js","sourceRoot":"","sources":["../../src/commands/daily-report.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,37 @@
|
|
|
1
|
+
import type { TopicEntry } from '../lib/types.js';
|
|
1
2
|
import type { CommandContext, CommandResult } from './help.js';
|
|
3
|
+
export type SkipReason = 'archived' | 'snoozed' | 'inactive' | 'recently-checked';
|
|
4
|
+
export interface EligibilityResult {
|
|
5
|
+
eligible: boolean;
|
|
6
|
+
skipReason?: SkipReason;
|
|
7
|
+
}
|
|
8
|
+
interface TopicOutcome {
|
|
9
|
+
name: string;
|
|
10
|
+
slug: string;
|
|
11
|
+
status: 'checked' | 'check-failed' | 'post-failed';
|
|
12
|
+
}
|
|
13
|
+
interface SkippedTopic {
|
|
14
|
+
name: string;
|
|
15
|
+
reason: SkipReason;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Like `isEligible`, but returns the specific skip reason.
|
|
19
|
+
* `isEligible` is kept for the registry-update loop (line 276).
|
|
20
|
+
*/
|
|
21
|
+
export declare function getEligibility(entry: TopicEntry, now: Date, statusTimestamp?: string | null): EligibilityResult;
|
|
22
|
+
export interface DoctorAllSummaryData {
|
|
23
|
+
checkedTopics: TopicOutcome[];
|
|
24
|
+
skippedTopics: SkippedTopic[];
|
|
25
|
+
postFailures: number;
|
|
26
|
+
dailyReportsSent: number;
|
|
27
|
+
dailyReportsSkipped: number;
|
|
28
|
+
hasPostFn: boolean;
|
|
29
|
+
migrationGroups: number;
|
|
30
|
+
errors: string[];
|
|
31
|
+
}
|
|
32
|
+
export declare function buildDoctorAllSummary(data: DoctorAllSummaryData): string;
|
|
2
33
|
export declare function handleDoctorAll(ctx: CommandContext): Promise<CommandResult>;
|
|
34
|
+
export declare function extractStatusTimestamp(content: string): string | null;
|
|
35
|
+
export declare function isEligible(entry: TopicEntry, now: Date, statusTimestamp?: string | null): boolean;
|
|
36
|
+
export {};
|
|
3
37
|
//# sourceMappingURL=doctor-all.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor-all.d.ts","sourceRoot":"","sources":["../../src/commands/doctor-all.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"doctor-all.d.ts","sourceRoot":"","sources":["../../src/commands/doctor-all.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,UAAU,EAAwB,MAAM,iBAAiB,CAAC;AAaxE,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAa/D,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,kBAAkB,CAAC;AAElF,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,SAAS,GAAG,cAAc,GAAG,aAAa,CAAC;CACpD;AAED,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,UAAU,EACjB,GAAG,EAAE,IAAI,EACT,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,GAC9B,iBAAiB,CAwBnB;AAkBD,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAID,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAsGxE;AAED,wBAAsB,eAAe,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,CA6SjF;AAKD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQrE;AASD,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAsBjG"}
|
|
@@ -3,10 +3,137 @@ import * as path from 'node:path';
|
|
|
3
3
|
import { readRegistry, withRegistry } from '../lib/registry.js';
|
|
4
4
|
import { checkAuthorization } from '../lib/auth.js';
|
|
5
5
|
import { DOCTOR_ALL_COOLDOWN_MS, DOCTOR_PER_TOPIC_CAP_MS, INACTIVE_AFTER_DAYS, MAX_POST_ERROR_LENGTH, SPAM_THRESHOLD, } from '../lib/types.js';
|
|
6
|
-
import { buildDoctorReport, buildDoctorButtons, buildDailyReport, createRateLimitedPoster } from '../lib/telegram.js';
|
|
6
|
+
import { buildDoctorReport, buildDoctorButtons, buildDailyReport, createRateLimitedPoster, truncateMessage } from '../lib/telegram.js';
|
|
7
7
|
import { runAllChecksForTopic, backupCapsuleIfHealthy } from '../lib/doctor-checks.js';
|
|
8
8
|
import { includePath } from '../lib/include-generator.js';
|
|
9
9
|
import { readFileOrNull, extractDoneSection, extractTodayLearnings, extractBlockers, extractNextActions, extractUpcoming, computeHealth, } from './daily-report.js';
|
|
10
|
+
/**
|
|
11
|
+
* Like `isEligible`, but returns the specific skip reason.
|
|
12
|
+
* `isEligible` is kept for the registry-update loop (line 276).
|
|
13
|
+
*/
|
|
14
|
+
export function getEligibility(entry, now, statusTimestamp) {
|
|
15
|
+
if (entry.status === 'archived')
|
|
16
|
+
return { eligible: false, skipReason: 'archived' };
|
|
17
|
+
if (entry.snoozeUntil && new Date(entry.snoozeUntil).getTime() > now.getTime()) {
|
|
18
|
+
return { eligible: false, skipReason: 'snoozed' };
|
|
19
|
+
}
|
|
20
|
+
const lastActive = mostRecent(entry.lastMessageAt, statusTimestamp);
|
|
21
|
+
if (lastActive) {
|
|
22
|
+
const lastActiveMs = new Date(lastActive).getTime();
|
|
23
|
+
const inactiveMs = INACTIVE_AFTER_DAYS * 24 * 60 * 60 * 1000;
|
|
24
|
+
if (now.getTime() - lastActiveMs > inactiveMs) {
|
|
25
|
+
return { eligible: false, skipReason: 'inactive' };
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
if (entry.lastDoctorReportAt) {
|
|
29
|
+
const lastReport = new Date(entry.lastDoctorReportAt).getTime();
|
|
30
|
+
if (now.getTime() - lastReport < DOCTOR_PER_TOPIC_CAP_MS) {
|
|
31
|
+
return { eligible: false, skipReason: 'recently-checked' };
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return { eligible: true };
|
|
35
|
+
}
|
|
36
|
+
// ── Summary builder ──────────────────────────────────────────────────
|
|
37
|
+
const SKIP_ICONS = {
|
|
38
|
+
archived: '\ud83d\udce6', // 📦
|
|
39
|
+
snoozed: '\ud83d\udca4', // 💤
|
|
40
|
+
inactive: '\ud83d\udd07', // 🔇
|
|
41
|
+
'recently-checked': '\u23f0', // ⏰
|
|
42
|
+
};
|
|
43
|
+
const SKIP_LABELS = {
|
|
44
|
+
archived: 'archived',
|
|
45
|
+
snoozed: 'snoozed',
|
|
46
|
+
inactive: 'inactive',
|
|
47
|
+
'recently-checked': 'recently checked',
|
|
48
|
+
};
|
|
49
|
+
const SUMMARY_SOFT_LIMIT = 3800;
|
|
50
|
+
export function buildDoctorAllSummary(data) {
|
|
51
|
+
const { checkedTopics, skippedTopics, postFailures, dailyReportsSent, dailyReportsSkipped, hasPostFn, migrationGroups, errors, } = data;
|
|
52
|
+
if (checkedTopics.length === 0 && skippedTopics.length === 0) {
|
|
53
|
+
return '**Health Check Summary**\n\nNo topics registered yet.';
|
|
54
|
+
}
|
|
55
|
+
const lines = ['**Health Check Summary**', ''];
|
|
56
|
+
// ── Checked topics ──
|
|
57
|
+
let checkedRendered = 0;
|
|
58
|
+
for (const t of checkedTopics) {
|
|
59
|
+
let icon;
|
|
60
|
+
let label;
|
|
61
|
+
switch (t.status) {
|
|
62
|
+
case 'checked':
|
|
63
|
+
icon = '\u2705'; // ✅
|
|
64
|
+
label = 'checked';
|
|
65
|
+
break;
|
|
66
|
+
case 'check-failed':
|
|
67
|
+
icon = '\u274c'; // ❌
|
|
68
|
+
label = 'check failed';
|
|
69
|
+
break;
|
|
70
|
+
case 'post-failed':
|
|
71
|
+
icon = '\u26a0\ufe0f'; // ⚠️
|
|
72
|
+
label = 'failed to post';
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
const line = `${icon} ${t.name} \u2014 ${label}`;
|
|
76
|
+
if (lines.join('\n').length + line.length > SUMMARY_SOFT_LIMIT) {
|
|
77
|
+
const remaining = checkedTopics.length - checkedRendered;
|
|
78
|
+
lines.push(`... and ${remaining} more`);
|
|
79
|
+
break;
|
|
80
|
+
}
|
|
81
|
+
lines.push(line);
|
|
82
|
+
checkedRendered++;
|
|
83
|
+
}
|
|
84
|
+
// ── Skipped topics ──
|
|
85
|
+
if (skippedTopics.length > 0) {
|
|
86
|
+
lines.push('');
|
|
87
|
+
lines.push('\u23ed\ufe0f Skipped:'); // ⏭️
|
|
88
|
+
let skippedRendered = 0;
|
|
89
|
+
for (const t of skippedTopics) {
|
|
90
|
+
const icon = SKIP_ICONS[t.reason];
|
|
91
|
+
const label = SKIP_LABELS[t.reason];
|
|
92
|
+
const line = `${icon} ${t.name} \u2014 ${label}`;
|
|
93
|
+
if (lines.join('\n').length + line.length > SUMMARY_SOFT_LIMIT) {
|
|
94
|
+
const remaining = skippedTopics.length - skippedRendered;
|
|
95
|
+
lines.push(`... and ${remaining} more`);
|
|
96
|
+
break;
|
|
97
|
+
}
|
|
98
|
+
lines.push(line);
|
|
99
|
+
skippedRendered++;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
// ── Post failures callout ──
|
|
103
|
+
if (postFailures > 0) {
|
|
104
|
+
lines.push('');
|
|
105
|
+
lines.push(`\u26a0\ufe0f ${postFailures} topic(s) failed to post`);
|
|
106
|
+
}
|
|
107
|
+
// ── Daily reports ──
|
|
108
|
+
if (hasPostFn) {
|
|
109
|
+
const parts = [];
|
|
110
|
+
if (dailyReportsSent > 0)
|
|
111
|
+
parts.push(`${dailyReportsSent} sent`);
|
|
112
|
+
if (dailyReportsSkipped > 0)
|
|
113
|
+
parts.push(`${dailyReportsSkipped} skipped`);
|
|
114
|
+
if (parts.length > 0) {
|
|
115
|
+
lines.push('');
|
|
116
|
+
lines.push(`Daily reports: ${parts.join(', ')}`);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
// ── Migration warning ──
|
|
120
|
+
if (migrationGroups > 0) {
|
|
121
|
+
lines.push('');
|
|
122
|
+
lines.push(`**Warning:** ${migrationGroups} group(s) had all topics fail. The group may have been migrated or deleted.`);
|
|
123
|
+
}
|
|
124
|
+
// ── Check errors (internal) ──
|
|
125
|
+
if (errors.length > 0) {
|
|
126
|
+
lines.push('');
|
|
127
|
+
lines.push(`**Errors (${errors.length}):**`);
|
|
128
|
+
for (const e of errors.slice(0, 10)) {
|
|
129
|
+
lines.push(`- ${e}`);
|
|
130
|
+
}
|
|
131
|
+
if (errors.length > 10) {
|
|
132
|
+
lines.push(`... and ${errors.length - 10} more`);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
return truncateMessage(lines.join('\n'));
|
|
136
|
+
}
|
|
10
137
|
export async function handleDoctorAll(ctx) {
|
|
11
138
|
const { workspaceDir, configDir, logger } = ctx;
|
|
12
139
|
const registry = readRegistry(workspaceDir);
|
|
@@ -50,14 +177,18 @@ export async function handleDoctorAll(ctx) {
|
|
|
50
177
|
const allEntries = Object.entries(registry.topics);
|
|
51
178
|
const reports = [];
|
|
52
179
|
const errors = [];
|
|
53
|
-
|
|
54
|
-
|
|
180
|
+
const checkedTopics = [];
|
|
181
|
+
const skippedTopics = [];
|
|
55
182
|
// Group tracking for migration detection
|
|
56
183
|
const groupPostResults = new Map();
|
|
57
184
|
for (const [_key, entry] of allEntries) {
|
|
58
|
-
// Eligibility gating
|
|
59
|
-
|
|
60
|
-
|
|
185
|
+
// Eligibility gating — consider STATUS.md timestamp alongside lastMessageAt
|
|
186
|
+
const capsuleDir = path.join(projectsBase, entry.slug);
|
|
187
|
+
const statusForEligibility = readFileOrNull(path.join(capsuleDir, 'STATUS.md'));
|
|
188
|
+
const statusTs = statusForEligibility ? extractStatusTimestamp(statusForEligibility) : null;
|
|
189
|
+
const eligibility = getEligibility(entry, now, statusTs);
|
|
190
|
+
if (!eligibility.eligible) {
|
|
191
|
+
skippedTopics.push({ name: entry.name, reason: eligibility.skipReason });
|
|
61
192
|
continue;
|
|
62
193
|
}
|
|
63
194
|
try {
|
|
@@ -86,12 +217,13 @@ export async function handleDoctorAll(ctx) {
|
|
|
86
217
|
}
|
|
87
218
|
const group = groupPostResults.get(gk);
|
|
88
219
|
group.total++;
|
|
89
|
-
|
|
220
|
+
checkedTopics.push({ name: entry.name, slug: entry.slug, status: 'checked' });
|
|
90
221
|
}
|
|
91
222
|
catch (err) {
|
|
92
223
|
const msg = err instanceof Error ? err.message : String(err);
|
|
93
224
|
errors.push(`${entry.slug}: ${msg}`);
|
|
94
225
|
logger.error(`[doctor-all] Error processing ${entry.slug}: ${msg}`);
|
|
226
|
+
checkedTopics.push({ name: entry.name, slug: entry.slug, status: 'check-failed' });
|
|
95
227
|
// Track failures for migration detection
|
|
96
228
|
const gk = entry.groupId;
|
|
97
229
|
if (!groupPostResults.has(gk)) {
|
|
@@ -110,14 +242,13 @@ export async function handleDoctorAll(ctx) {
|
|
|
110
242
|
}
|
|
111
243
|
}
|
|
112
244
|
// Fan-out posting: post individual reports to each topic if postFn is available
|
|
113
|
-
let
|
|
114
|
-
|
|
245
|
+
let postFailures = 0;
|
|
246
|
+
const postFailedSlugs = new Set();
|
|
115
247
|
if (ctx.postFn && reports.length > 0) {
|
|
116
248
|
const rateLimitedPost = createRateLimitedPoster(ctx.postFn);
|
|
117
249
|
for (const report of reports) {
|
|
118
250
|
try {
|
|
119
251
|
await rateLimitedPost(report.groupId, report.threadId, report.text, report.keyboard);
|
|
120
|
-
postSuccesses++;
|
|
121
252
|
// Update lastDoctorReportAt transactionally on success
|
|
122
253
|
await withRegistry(workspaceDir, (data) => {
|
|
123
254
|
const key = `${report.groupId}:${report.threadId}`;
|
|
@@ -129,7 +260,8 @@ export async function handleDoctorAll(ctx) {
|
|
|
129
260
|
});
|
|
130
261
|
}
|
|
131
262
|
catch (err) {
|
|
132
|
-
|
|
263
|
+
postFailures++;
|
|
264
|
+
postFailedSlugs.add(report.slug);
|
|
133
265
|
const msg = err instanceof Error ? err.message : String(err);
|
|
134
266
|
logger.error(`[doctor-all] Post failed for ${report.slug}: ${msg}`);
|
|
135
267
|
// Store error on topic entry
|
|
@@ -142,6 +274,12 @@ export async function handleDoctorAll(ctx) {
|
|
|
142
274
|
});
|
|
143
275
|
}
|
|
144
276
|
}
|
|
277
|
+
// Update outcomes for post-failed topics
|
|
278
|
+
for (const outcome of checkedTopics) {
|
|
279
|
+
if (postFailedSlugs.has(outcome.slug) && outcome.status === 'checked') {
|
|
280
|
+
outcome.status = 'post-failed';
|
|
281
|
+
}
|
|
282
|
+
}
|
|
145
283
|
}
|
|
146
284
|
// Daily report fan-out: generate and post daily reports for eligible topics
|
|
147
285
|
let dailyReportSuccesses = 0;
|
|
@@ -202,7 +340,10 @@ export async function handleDoctorAll(ctx) {
|
|
|
202
340
|
await withRegistry(workspaceDir, (data) => {
|
|
203
341
|
data.lastDoctorAllRunAt = now.toISOString();
|
|
204
342
|
for (const [_key, entry] of Object.entries(data.topics)) {
|
|
205
|
-
|
|
343
|
+
const dir = path.join(projectsBase, entry.slug);
|
|
344
|
+
const statusFile = readFileOrNull(path.join(dir, 'STATUS.md'));
|
|
345
|
+
const ts = statusFile ? extractStatusTimestamp(statusFile) : null;
|
|
346
|
+
if (!isEligible(entry, now, ts))
|
|
206
347
|
continue;
|
|
207
348
|
// Update consecutiveSilentDoctors (compare against old lastDoctorRunAt before overwriting)
|
|
208
349
|
if (entry.lastMessageAt) {
|
|
@@ -238,36 +379,41 @@ export async function handleDoctorAll(ctx) {
|
|
|
238
379
|
}
|
|
239
380
|
});
|
|
240
381
|
// Build summary
|
|
241
|
-
const lines = [
|
|
242
|
-
`**Health Check Summary**`,
|
|
243
|
-
'',
|
|
244
|
-
`Checked: ${processed}`,
|
|
245
|
-
`Skipped: ${skipped}`,
|
|
246
|
-
`Total topics: ${allEntries.length}`,
|
|
247
|
-
];
|
|
248
|
-
if (ctx.postFn) {
|
|
249
|
-
lines.push(`Posted: ${postSuccesses}, Post failures: ${postErrors}`);
|
|
250
|
-
lines.push(`Daily reports: ${dailyReportSuccesses} sent, ${dailyReportSkipped} skipped`);
|
|
251
|
-
}
|
|
252
|
-
if (errors.length > 0) {
|
|
253
|
-
lines.push('');
|
|
254
|
-
lines.push(`**Errors (${errors.length}):**`);
|
|
255
|
-
for (const e of errors.slice(0, 10)) {
|
|
256
|
-
lines.push(`- ${e}`);
|
|
257
|
-
}
|
|
258
|
-
if (errors.length > 10) {
|
|
259
|
-
lines.push(`... and ${errors.length - 10} more`);
|
|
260
|
-
}
|
|
261
|
-
}
|
|
262
|
-
if (migrationGroups.length > 0) {
|
|
263
|
-
lines.push('');
|
|
264
|
-
lines.push(`**Warning:** ${migrationGroups.length} group(s) had all topics fail. The group may have been migrated or deleted.`);
|
|
265
|
-
}
|
|
266
382
|
return {
|
|
267
|
-
text:
|
|
383
|
+
text: buildDoctorAllSummary({
|
|
384
|
+
checkedTopics,
|
|
385
|
+
skippedTopics,
|
|
386
|
+
postFailures,
|
|
387
|
+
dailyReportsSent: dailyReportSuccesses,
|
|
388
|
+
dailyReportsSkipped: dailyReportSkipped,
|
|
389
|
+
hasPostFn: !!ctx.postFn,
|
|
390
|
+
migrationGroups: migrationGroups.length,
|
|
391
|
+
errors,
|
|
392
|
+
}),
|
|
268
393
|
};
|
|
269
394
|
}
|
|
270
|
-
|
|
395
|
+
const STATUS_TIMESTAMP_RE = /^##\s*Last done\s*\(UTC\)/im;
|
|
396
|
+
const ISO_TIMESTAMP_RE = /\d{4}-\d{2}-\d{2}T\d{2}:\d{2}/;
|
|
397
|
+
export function extractStatusTimestamp(content) {
|
|
398
|
+
if (!STATUS_TIMESTAMP_RE.test(content))
|
|
399
|
+
return null;
|
|
400
|
+
const idx = content.search(STATUS_TIMESTAMP_RE);
|
|
401
|
+
const sectionAfter = content.slice(idx);
|
|
402
|
+
const nextSection = sectionAfter.indexOf('\n## ', 1);
|
|
403
|
+
const section = nextSection > 0 ? sectionAfter.slice(0, nextSection) : sectionAfter;
|
|
404
|
+
const match = section.match(ISO_TIMESTAMP_RE);
|
|
405
|
+
return match ? match[0] : null;
|
|
406
|
+
}
|
|
407
|
+
function mostRecent(a, b) {
|
|
408
|
+
if (!a && !b)
|
|
409
|
+
return null;
|
|
410
|
+
if (!a)
|
|
411
|
+
return b;
|
|
412
|
+
if (!b)
|
|
413
|
+
return a;
|
|
414
|
+
return a > b ? a : b;
|
|
415
|
+
}
|
|
416
|
+
export function isEligible(entry, now, statusTimestamp) {
|
|
271
417
|
// Skip archived
|
|
272
418
|
if (entry.status === 'archived')
|
|
273
419
|
return false;
|
|
@@ -275,10 +421,11 @@ function isEligible(entry, now) {
|
|
|
275
421
|
if (entry.snoozeUntil && new Date(entry.snoozeUntil).getTime() > now.getTime())
|
|
276
422
|
return false;
|
|
277
423
|
// Skip inactive (no activity for INACTIVE_AFTER_DAYS)
|
|
278
|
-
|
|
279
|
-
|
|
424
|
+
const lastActive = mostRecent(entry.lastMessageAt, statusTimestamp);
|
|
425
|
+
if (lastActive) {
|
|
426
|
+
const lastActiveMs = new Date(lastActive).getTime();
|
|
280
427
|
const inactiveMs = INACTIVE_AFTER_DAYS * 24 * 60 * 60 * 1000;
|
|
281
|
-
if (now.getTime() -
|
|
428
|
+
if (now.getTime() - lastActiveMs > inactiveMs)
|
|
282
429
|
return false;
|
|
283
430
|
}
|
|
284
431
|
// Skip if reported in last 24 hours
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor-all.js","sourceRoot":"","sources":["../../src/commands/doctor-all.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"doctor-all.js","sourceRoot":"","sources":["../../src/commands/doctor-all.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/init.d.ts
CHANGED
|
@@ -7,12 +7,12 @@ export declare function handleInit(ctx: CommandContext, args: string): Promise<C
|
|
|
7
7
|
*/
|
|
8
8
|
export declare function handleInitInteractive(ctx: CommandContext, args: string): Promise<CommandResult>;
|
|
9
9
|
/**
|
|
10
|
-
* Callback handler for type buttons (`ic`/`ir`/`im`/`
|
|
10
|
+
* Callback handler for type buttons (`ic`/`ir`/`im`/`ig`): show name confirmation.
|
|
11
11
|
* Re-validates context/auth/max-topics before showing.
|
|
12
12
|
*/
|
|
13
13
|
export declare function handleInitTypeSelect(ctx: CommandContext, type: TopicType): Promise<CommandResult>;
|
|
14
14
|
/**
|
|
15
|
-
* Callback handler for confirm buttons (`yc`/`yr`/`ym`/`
|
|
15
|
+
* Callback handler for confirm buttons (`yc`/`yr`/`ym`/`yg`): complete init with chosen type.
|
|
16
16
|
*/
|
|
17
17
|
export declare function handleInitNameConfirm(ctx: CommandContext, type: TopicType): Promise<CommandResult>;
|
|
18
18
|
//# sourceMappingURL=init.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,SAAS,EAAc,MAAM,iBAAiB,CAAC;AAoB7D,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AA2B/D,wBAAsB,UAAU,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,SAAS,EAAc,MAAM,iBAAiB,CAAC;AAoB7D,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AA2B/D,wBAAsB,UAAU,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CA8L1F;AAID;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAKrG;AAyDD;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,CAkDvG;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,CAExG"}
|
package/dist/commands/init.js
CHANGED
|
@@ -10,7 +10,7 @@ import { generateInclude } from '../lib/include-generator.js';
|
|
|
10
10
|
import { triggerRestart, getConfigWrites } from '../lib/config-restart.js';
|
|
11
11
|
import { appendAudit, buildAuditEntry } from '../lib/audit.js';
|
|
12
12
|
import { MARKER_START, HEARTBEAT_BLOCK, HEARTBEAT_FILENAME } from './autopilot.js';
|
|
13
|
-
const VALID_TYPES = new Set(['coding', 'research', 'marketing', '
|
|
13
|
+
const VALID_TYPES = new Set(['coding', 'research', 'marketing', 'general']);
|
|
14
14
|
function deriveTopicName(nameArg, messageContext, threadId) {
|
|
15
15
|
const topicTitle = messageContext?.['topicTitle'] ?? '';
|
|
16
16
|
let name;
|
|
@@ -183,7 +183,7 @@ export async function handleInit(ctx, args) {
|
|
|
183
183
|
try {
|
|
184
184
|
const htmlCard = buildTopicCardHtml(name, topicType);
|
|
185
185
|
await ctx.postFn(groupId, threadId, htmlCard);
|
|
186
|
-
return { text: ''
|
|
186
|
+
return { text: '' };
|
|
187
187
|
}
|
|
188
188
|
catch {
|
|
189
189
|
// Fall through to markdown fallback
|
|
@@ -191,7 +191,6 @@ export async function handleInit(ctx, args) {
|
|
|
191
191
|
}
|
|
192
192
|
return {
|
|
193
193
|
text: `${topicCard}${restartMsg}`,
|
|
194
|
-
pin: true,
|
|
195
194
|
};
|
|
196
195
|
}
|
|
197
196
|
// ── Interactive init flow ─────────────────────────────────────────────
|
|
@@ -252,7 +251,7 @@ async function buildTypePicker(ctx) {
|
|
|
252
251
|
};
|
|
253
252
|
}
|
|
254
253
|
/**
|
|
255
|
-
* Callback handler for type buttons (`ic`/`ir`/`im`/`
|
|
254
|
+
* Callback handler for type buttons (`ic`/`ir`/`im`/`ig`): show name confirmation.
|
|
256
255
|
* Re-validates context/auth/max-topics before showing.
|
|
257
256
|
*/
|
|
258
257
|
export async function handleInitTypeSelect(ctx, type) {
|
|
@@ -299,7 +298,7 @@ export async function handleInitTypeSelect(ctx, type) {
|
|
|
299
298
|
};
|
|
300
299
|
}
|
|
301
300
|
/**
|
|
302
|
-
* Callback handler for confirm buttons (`yc`/`yr`/`ym`/`
|
|
301
|
+
* Callback handler for confirm buttons (`yc`/`yr`/`ym`/`yg`): complete init with chosen type.
|
|
303
302
|
*/
|
|
304
303
|
export async function handleInitNameConfirm(ctx, type) {
|
|
305
304
|
return handleInit(ctx, type);
|