reflectt-node 0.1.4 → 0.1.6
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 +63 -146
- package/defaults/TEAM-ROLES.yaml +221 -31
- package/dist/activationEvents.d.ts +13 -2
- package/dist/activationEvents.d.ts.map +1 -1
- package/dist/activationEvents.js +172 -38
- package/dist/activationEvents.js.map +1 -1
- package/dist/activity.d.ts +72 -0
- package/dist/activity.d.ts.map +1 -0
- package/dist/activity.js +510 -0
- package/dist/activity.js.map +1 -0
- package/dist/alert-preflight.d.ts +33 -0
- package/dist/alert-preflight.d.ts.map +1 -1
- package/dist/alert-preflight.js +218 -2
- package/dist/alert-preflight.js.map +1 -1
- package/dist/assignment.d.ts.map +1 -1
- package/dist/assignment.js +11 -6
- package/dist/assignment.js.map +1 -1
- package/dist/boardHealthWorker.d.ts.map +1 -1
- package/dist/boardHealthWorker.js +25 -12
- package/dist/boardHealthWorker.js.map +1 -1
- package/dist/canvas-slots.d.ts +1 -1
- package/dist/channels.d.ts +1 -1
- package/dist/chat-approval-detector.d.ts.map +1 -1
- package/dist/chat-approval-detector.js +29 -11
- package/dist/chat-approval-detector.js.map +1 -1
- package/dist/chat.d.ts +14 -0
- package/dist/chat.d.ts.map +1 -1
- package/dist/chat.js +68 -4
- package/dist/chat.js.map +1 -1
- package/dist/cli.js +349 -28
- package/dist/cli.js.map +1 -1
- package/dist/cloud.d.ts +28 -1
- package/dist/cloud.d.ts.map +1 -1
- package/dist/cloud.js +62 -25
- package/dist/cloud.js.map +1 -1
- package/dist/compliance-detector.d.ts +42 -0
- package/dist/compliance-detector.d.ts.map +1 -0
- package/dist/compliance-detector.js +286 -0
- package/dist/compliance-detector.js.map +1 -0
- package/dist/continuity-loop.d.ts.map +1 -1
- package/dist/continuity-loop.js +7 -3
- package/dist/continuity-loop.js.map +1 -1
- package/dist/dashboard.d.ts +6 -2
- package/dist/dashboard.d.ts.map +1 -1
- package/dist/dashboard.js +84 -28
- package/dist/dashboard.js.map +1 -1
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +24 -1
- package/dist/db.js.map +1 -1
- package/dist/doctor.d.ts.map +1 -1
- package/dist/doctor.js +17 -6
- package/dist/doctor.js.map +1 -1
- package/dist/executionSweeper.d.ts +2 -0
- package/dist/executionSweeper.d.ts.map +1 -1
- package/dist/executionSweeper.js +60 -4
- package/dist/executionSweeper.js.map +1 -1
- package/dist/focus.d.ts +20 -0
- package/dist/focus.d.ts.map +1 -0
- package/dist/focus.js +57 -0
- package/dist/focus.js.map +1 -0
- package/dist/health.d.ts +1 -0
- package/dist/health.d.ts.map +1 -1
- package/dist/health.js +47 -15
- package/dist/health.js.map +1 -1
- package/dist/hostConnectGuard.d.ts +25 -0
- package/dist/hostConnectGuard.d.ts.map +1 -0
- package/dist/hostConnectGuard.js +27 -0
- package/dist/hostConnectGuard.js.map +1 -0
- package/dist/index.js +257 -39
- package/dist/index.js.map +1 -1
- package/dist/insight-mutation.d.ts +26 -0
- package/dist/insight-mutation.d.ts.map +1 -1
- package/dist/insight-mutation.js +103 -12
- package/dist/insight-mutation.js.map +1 -1
- package/dist/insight-task-bridge.d.ts +1 -1
- package/dist/insight-task-bridge.d.ts.map +1 -1
- package/dist/insight-task-bridge.js +6 -3
- package/dist/insight-task-bridge.js.map +1 -1
- package/dist/insights.d.ts +20 -0
- package/dist/insights.d.ts.map +1 -1
- package/dist/insights.js +129 -4
- package/dist/insights.js.map +1 -1
- package/dist/mcp.d.ts.map +1 -1
- package/dist/mcp.js +9 -8
- package/dist/mcp.js.map +1 -1
- package/dist/notificationDedupeGuard.d.ts +33 -0
- package/dist/notificationDedupeGuard.d.ts.map +1 -0
- package/dist/notificationDedupeGuard.js +88 -0
- package/dist/notificationDedupeGuard.js.map +1 -0
- package/dist/openclaw.d.ts.map +1 -1
- package/dist/openclaw.js +3 -2
- package/dist/openclaw.js.map +1 -1
- package/dist/policy.d.ts +1 -1
- package/dist/policy.d.ts.map +1 -1
- package/dist/policy.js +3 -1
- package/dist/policy.js.map +1 -1
- package/dist/prAutoMerge.d.ts.map +1 -1
- package/dist/prAutoMerge.js +23 -0
- package/dist/prAutoMerge.js.map +1 -1
- package/dist/presence.d.ts +16 -1
- package/dist/presence.d.ts.map +1 -1
- package/dist/presence.js +97 -9
- package/dist/presence.js.map +1 -1
- package/dist/pulse.d.ts +60 -0
- package/dist/pulse.d.ts.map +1 -0
- package/dist/pulse.js +139 -0
- package/dist/pulse.js.map +1 -0
- package/dist/reflection-automation.d.ts.map +1 -1
- package/dist/reflection-automation.js +38 -0
- package/dist/reflection-automation.js.map +1 -1
- package/dist/release.d.ts +2 -0
- package/dist/release.d.ts.map +1 -1
- package/dist/release.js +14 -1
- package/dist/release.js.map +1 -1
- package/dist/request-tracker.d.ts +6 -0
- package/dist/request-tracker.d.ts.map +1 -1
- package/dist/request-tracker.js +31 -12
- package/dist/request-tracker.js.map +1 -1
- package/dist/scopeOverlap.d.ts +32 -0
- package/dist/scopeOverlap.d.ts.map +1 -0
- package/dist/scopeOverlap.js +219 -0
- package/dist/scopeOverlap.js.map +1 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +736 -117
- package/dist/server.js.map +1 -1
- package/dist/service-probe.d.ts.map +1 -1
- package/dist/service-probe.js +39 -2
- package/dist/service-probe.js.map +1 -1
- package/dist/shipped-heartbeat.d.ts +1 -1
- package/dist/shipped-heartbeat.js +1 -1
- package/dist/taskPrecheck.js +6 -6
- package/dist/taskPrecheck.js.map +1 -1
- package/dist/tasks-next-diagnostics.d.ts +15 -0
- package/dist/tasks-next-diagnostics.d.ts.map +1 -0
- package/dist/tasks-next-diagnostics.js +33 -0
- package/dist/tasks-next-diagnostics.js.map +1 -0
- package/dist/tasks.d.ts +3 -2
- package/dist/tasks.d.ts.map +1 -1
- package/dist/tasks.js +41 -16
- package/dist/tasks.js.map +1 -1
- package/dist/team-config.d.ts.map +1 -1
- package/dist/team-config.js +20 -0
- package/dist/team-config.js.map +1 -1
- package/dist/todoHoardingGuard.d.ts +35 -0
- package/dist/todoHoardingGuard.d.ts.map +1 -0
- package/dist/todoHoardingGuard.js +150 -0
- package/dist/todoHoardingGuard.js.map +1 -0
- package/dist/types.d.ts +4 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/version.d.ts +2 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +16 -0
- package/dist/version.js.map +1 -0
- package/dist/working-contract.d.ts.map +1 -1
- package/dist/working-contract.js +59 -3
- package/dist/working-contract.js.map +1 -1
- package/package.json +5 -1
- package/public/dashboard.js +161 -20
- package/public/docs.md +68 -8
- package/public/polls-mock.html +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service-probe.d.ts","sourceRoot":"","sources":["../src/service-probe.ts"],"names":[],"mappings":"AAcA,UAAU,WAAW;IACnB,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAA;IACf,gCAAgC;IAChC,WAAW,EAAE,MAAM,CAAA;IACnB,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAA;IACjB,0CAA0C;IAC1C,UAAU,EAAE,MAAM,CAAA;IAClB,8CAA8C;IAC9C,iBAAiB,EAAE,MAAM,CAAA;IACzB,mDAAmD;IACnD,kBAAkB,EAAE,MAAM,CAAA;IAC1B,qCAAqC;IACrC,MAAM,EAAE,OAAO,CAAA;IACf,oBAAoB;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,oCAAoC;IACpC,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAED,QAAA,MAAM,cAAc,EAAE,WAUrB,CAAA;AAID,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,iCAAiC;IACjC,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAA;IACpC,+DAA+D;IAC/D,QAAQ,EAAE,OAAO,CAAA;CAClB;AAED,QAAA,MAAM,SAAS,EAAE,aAAa,EA4B7B,CAAA;AAID,UAAU,UAAU;IAClB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,iBAAiB,EAAE,MAAM,EAAE,CAAA;IAC3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,QAAA,MAAM,KAAK,EAAE,UAQZ,CAAA;
|
|
1
|
+
{"version":3,"file":"service-probe.d.ts","sourceRoot":"","sources":["../src/service-probe.ts"],"names":[],"mappings":"AAcA,UAAU,WAAW;IACnB,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAA;IACf,gCAAgC;IAChC,WAAW,EAAE,MAAM,CAAA;IACnB,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAA;IACjB,0CAA0C;IAC1C,UAAU,EAAE,MAAM,CAAA;IAClB,8CAA8C;IAC9C,iBAAiB,EAAE,MAAM,CAAA;IACzB,mDAAmD;IACnD,kBAAkB,EAAE,MAAM,CAAA;IAC1B,qCAAqC;IACrC,MAAM,EAAE,OAAO,CAAA;IACf,oBAAoB;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,oCAAoC;IACpC,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAED,QAAA,MAAM,cAAc,EAAE,WAUrB,CAAA;AAID,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,iCAAiC;IACjC,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAA;IACpC,+DAA+D;IAC/D,QAAQ,EAAE,OAAO,CAAA;CAClB;AAED,QAAA,MAAM,SAAS,EAAE,aAAa,EA4B7B,CAAA;AAID,UAAU,UAAU;IAClB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,iBAAiB,EAAE,MAAM,EAAE,CAAA;IAC3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,QAAA,MAAM,KAAK,EAAE,UAQZ,CAAA;AA8CD,iBAAe,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA0BtI;AAID,iBAAS,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAY9E;AAED,iBAAS,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAgCpE;AAID,iBAAe,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA2C1D;AA2DD,OAAO,EACL,aAAa,EACb,QAAQ,EACR,cAAc,EACd,UAAU,EACV,KAAK,IAAI,WAAW,EACpB,SAAS,EACT,cAAc,EACd,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,aAAa,GACnB,CAAA"}
|
package/dist/service-probe.js
CHANGED
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
//
|
|
7
7
|
// Usage: node dist/service-probe.js [--interval 30] [--max-retries 3] [--dry-run]
|
|
8
8
|
import { execSync } from 'node:child_process';
|
|
9
|
-
import { appendFile, mkdir } from 'node:fs/promises';
|
|
10
|
-
import { dirname } from 'node:path';
|
|
9
|
+
import { appendFile, mkdir, readFile, writeFile } from 'node:fs/promises';
|
|
10
|
+
import { dirname, join } from 'node:path';
|
|
11
11
|
const DEFAULT_CONFIG = {
|
|
12
12
|
baseUrl: 'http://127.0.0.1:4445',
|
|
13
13
|
intervalSec: 30,
|
|
@@ -57,6 +57,40 @@ const state = {
|
|
|
57
57
|
totalFailures: 0,
|
|
58
58
|
totalRestarts: 0,
|
|
59
59
|
};
|
|
60
|
+
// ── State Persistence ──
|
|
61
|
+
const STATE_FILE = join(process.env.DATA_DIR || 'data', 'probe-state.json');
|
|
62
|
+
async function loadState() {
|
|
63
|
+
try {
|
|
64
|
+
const raw = await readFile(STATE_FILE, 'utf-8');
|
|
65
|
+
const saved = JSON.parse(raw);
|
|
66
|
+
if (typeof saved.consecutiveFailures === 'number')
|
|
67
|
+
state.consecutiveFailures = saved.consecutiveFailures;
|
|
68
|
+
if (Array.isArray(saved.restartTimestamps))
|
|
69
|
+
state.restartTimestamps = saved.restartTimestamps;
|
|
70
|
+
if (typeof saved.totalChecks === 'number')
|
|
71
|
+
state.totalChecks = saved.totalChecks;
|
|
72
|
+
if (typeof saved.totalFailures === 'number')
|
|
73
|
+
state.totalFailures = saved.totalFailures;
|
|
74
|
+
if (typeof saved.totalRestarts === 'number')
|
|
75
|
+
state.totalRestarts = saved.totalRestarts;
|
|
76
|
+
if (saved.lastCheckAt)
|
|
77
|
+
state.lastCheckAt = saved.lastCheckAt;
|
|
78
|
+
if (saved.lastSuccessAt)
|
|
79
|
+
state.lastSuccessAt = saved.lastSuccessAt;
|
|
80
|
+
}
|
|
81
|
+
catch {
|
|
82
|
+
// No saved state — fresh start
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
async function saveState() {
|
|
86
|
+
try {
|
|
87
|
+
await mkdir(dirname(STATE_FILE), { recursive: true });
|
|
88
|
+
await writeFile(STATE_FILE, JSON.stringify(state, null, 2));
|
|
89
|
+
}
|
|
90
|
+
catch {
|
|
91
|
+
// Non-fatal — state just won't persist
|
|
92
|
+
}
|
|
93
|
+
}
|
|
60
94
|
// ── Logging ──
|
|
61
95
|
async function log(level, message, extra) {
|
|
62
96
|
const ts = new Date().toISOString();
|
|
@@ -165,6 +199,8 @@ async function runProbe(config) {
|
|
|
165
199
|
triggerRestart(config, `${state.consecutiveFailures} consecutive critical failures on [${failedNames}]: ${errors}`);
|
|
166
200
|
}
|
|
167
201
|
}
|
|
202
|
+
// Persist state after every check so consecutive_failures survives restarts
|
|
203
|
+
await saveState();
|
|
168
204
|
}
|
|
169
205
|
// ── Main ──
|
|
170
206
|
function parseArgs() {
|
|
@@ -197,6 +233,7 @@ function parseArgs() {
|
|
|
197
233
|
async function main() {
|
|
198
234
|
const overrides = parseArgs();
|
|
199
235
|
const config = { ...DEFAULT_CONFIG, ...overrides };
|
|
236
|
+
await loadState();
|
|
200
237
|
await log('INFO', 'Service probe starting', {
|
|
201
238
|
interval: config.intervalSec,
|
|
202
239
|
maxRetries: config.maxRetries,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service-probe.js","sourceRoot":"","sources":["../src/service-probe.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,oDAAoD;AACpD,EAAE;AACF,sEAAsE;AACtE,8EAA8E;AAC9E,EAAE;AACF,kFAAkF;AAElF,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"service-probe.js","sourceRoot":"","sources":["../src/service-probe.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,7 +51,7 @@ export declare function buildPayload(task: Task): ShippedHeartbeatPayload | null
|
|
|
51
51
|
*
|
|
52
52
|
* Examples:
|
|
53
53
|
* [SHIP] task-abc123 | shipped:process/spec.md | next:pending review | review:@sage | by:@scout
|
|
54
|
-
* [SHIP] task-def456 | shipped:src/feature.ts | next:done | review:@
|
|
54
|
+
* [SHIP] task-def456 | shipped:src/feature.ts | next:done | review:@owner | by:@link
|
|
55
55
|
* [SHIP] task-ghi789 | shipped:docs/runbook.md | next:~2h | review:@pixel | by:@echo
|
|
56
56
|
*/
|
|
57
57
|
export declare function formatMessage(payload: ShippedHeartbeatPayload): string;
|
|
@@ -83,7 +83,7 @@ export function buildPayload(task) {
|
|
|
83
83
|
*
|
|
84
84
|
* Examples:
|
|
85
85
|
* [SHIP] task-abc123 | shipped:process/spec.md | next:pending review | review:@sage | by:@scout
|
|
86
|
-
* [SHIP] task-def456 | shipped:src/feature.ts | next:done | review:@
|
|
86
|
+
* [SHIP] task-def456 | shipped:src/feature.ts | next:done | review:@owner | by:@link
|
|
87
87
|
* [SHIP] task-ghi789 | shipped:docs/runbook.md | next:~2h | review:@pixel | by:@echo
|
|
88
88
|
*/
|
|
89
89
|
export function formatMessage(payload) {
|
package/dist/taskPrecheck.js
CHANGED
|
@@ -105,11 +105,11 @@ export function runPrecheck(taskId, targetStatus) {
|
|
|
105
105
|
});
|
|
106
106
|
autoDefaults['metadata.artifact_path'] = suggestedPath;
|
|
107
107
|
}
|
|
108
|
-
else if (!isNonCode && !artifactPath.startsWith('process/')) {
|
|
108
|
+
else if (!isNonCode && !artifactPath.startsWith('process/') && !/^https?:\/\//.test(artifactPath)) {
|
|
109
109
|
items.push({
|
|
110
110
|
field: 'metadata.artifact_path',
|
|
111
111
|
severity: 'error',
|
|
112
|
-
message: 'artifact_path must be under process/ (repo-relative)',
|
|
112
|
+
message: 'artifact_path must be under process/ (repo-relative) or a URL (e.g. PR link)',
|
|
113
113
|
});
|
|
114
114
|
}
|
|
115
115
|
// Review handoff (reuse handoff from above)
|
|
@@ -128,8 +128,8 @@ export function runPrecheck(taskId, targetStatus) {
|
|
|
128
128
|
else if (handoff.task_id !== taskId) {
|
|
129
129
|
items.push({ field: 'metadata.review_handoff.task_id', severity: 'error', message: `task_id must match: expected "${taskId}"` });
|
|
130
130
|
}
|
|
131
|
-
if (!isNonCode && !handoff.artifact_path) {
|
|
132
|
-
items.push({ field: 'metadata.review_handoff.artifact_path', severity: 'error', message: 'artifact_path required in review_handoff (or set non_code=true)' });
|
|
131
|
+
if (!isNonCode && !handoff.artifact_path && !handoff.pr_url) {
|
|
132
|
+
items.push({ field: 'metadata.review_handoff.artifact_path', severity: 'error', message: 'artifact_path or pr_url required in review_handoff (or set non_code=true)' });
|
|
133
133
|
}
|
|
134
134
|
if (!isNonCode && !handoff.test_proof) {
|
|
135
135
|
items.push({ field: 'metadata.review_handoff.test_proof', severity: 'error', message: 'test_proof required (e.g. "vitest run: 206 pass") — or set non_code=true' });
|
|
@@ -226,7 +226,7 @@ export function runPrecheck(taskId, targetStatus) {
|
|
|
226
226
|
}
|
|
227
227
|
}
|
|
228
228
|
// ── Ready-queue floor warning ────────────────────────────────────────
|
|
229
|
-
if ((targetStatus === 'validating' || targetStatus === 'done') && task.assignee) {
|
|
229
|
+
if ((targetStatus === 'validating' || targetStatus === 'done' || targetStatus === 'resolved_externally') && task.assignee) {
|
|
230
230
|
const policy = policyManager.get();
|
|
231
231
|
const rqf = policy.readyQueueFloor;
|
|
232
232
|
if (rqf?.enabled && rqf.agents.includes(task.assignee)) {
|
|
@@ -236,7 +236,7 @@ export function runPrecheck(taskId, targetStatus) {
|
|
|
236
236
|
if (!blocked)
|
|
237
237
|
return true;
|
|
238
238
|
const blocker = taskManager.getTask(blocked);
|
|
239
|
-
return !blocker || blocker.status === 'done';
|
|
239
|
+
return !blocker || blocker.status === 'done' || blocker.status === 'resolved_externally' || blocker.status === 'cancelled';
|
|
240
240
|
});
|
|
241
241
|
// This task is leaving the queue, so effective count will drop
|
|
242
242
|
const effectiveReady = unblockedTodo.length;
|
package/dist/taskPrecheck.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taskPrecheck.js","sourceRoot":"","sources":["../src/taskPrecheck.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taskPrecheck.js","sourceRoot":"","sources":["../src/taskPrecheck.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type TasksNextEmptyDiagnostics = {
|
|
2
|
+
agent?: string;
|
|
3
|
+
/** Counts are "ready" counts: blocked tasks are excluded */
|
|
4
|
+
ready_doing_assigned: number;
|
|
5
|
+
ready_todo_unassigned: number;
|
|
6
|
+
ready_todo_assigned: number;
|
|
7
|
+
ready_validating_assigned: number;
|
|
8
|
+
};
|
|
9
|
+
export declare function formatTasksNextEmptyResponse(diagnostics: TasksNextEmptyDiagnostics): {
|
|
10
|
+
message: string;
|
|
11
|
+
hint?: string;
|
|
12
|
+
code: 'NO_AVAILABLE_TASKS';
|
|
13
|
+
diagnostics: TasksNextEmptyDiagnostics;
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=tasks-next-diagnostics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tasks-next-diagnostics.d.ts","sourceRoot":"","sources":["../src/tasks-next-diagnostics.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,yBAAyB,GAAG;IACtC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,4DAA4D;IAC5D,oBAAoB,EAAE,MAAM,CAAA;IAC5B,qBAAqB,EAAE,MAAM,CAAA;IAC7B,mBAAmB,EAAE,MAAM,CAAA;IAC3B,yBAAyB,EAAE,MAAM,CAAA;CAClC,CAAA;AAED,wBAAgB,4BAA4B,CAC1C,WAAW,EAAE,yBAAyB,GACrC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,oBAAoB,CAAC;IAAC,WAAW,EAAE,yBAAyB,CAAA;CAAE,CAiCxG"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
// Copyright (c) Reflectt AI
|
|
3
|
+
export function formatTasksNextEmptyResponse(diagnostics) {
|
|
4
|
+
const a = diagnostics.agent;
|
|
5
|
+
const msgCounts = `ready(todo_unassigned=${diagnostics.ready_todo_unassigned}, todo_assigned_to_you=${diagnostics.ready_todo_assigned}, doing=${diagnostics.ready_doing_assigned}, validating=${diagnostics.ready_validating_assigned})`;
|
|
6
|
+
// Base message stays stable for clients; extra info is appended for humans.
|
|
7
|
+
const message = `No available tasks (${msgCounts})`;
|
|
8
|
+
let hint;
|
|
9
|
+
if (a) {
|
|
10
|
+
// Common confusion: agent is in validating-only state with an empty ready todo queue.
|
|
11
|
+
if (diagnostics.ready_doing_assigned === 0 &&
|
|
12
|
+
diagnostics.ready_todo_unassigned === 0 &&
|
|
13
|
+
diagnostics.ready_todo_assigned === 0 &&
|
|
14
|
+
diagnostics.ready_validating_assigned > 0) {
|
|
15
|
+
hint = `@${a} has only validating work right now. Either (1) wait for reviews, (2) unpause/adjust WIP if blocked elsewhere, or (3) mint an unassigned todo to keep the lane moving.`;
|
|
16
|
+
}
|
|
17
|
+
else if (diagnostics.ready_todo_unassigned === 0 && diagnostics.ready_todo_assigned === 0) {
|
|
18
|
+
hint = `No ready todo tasks are available for @${a}. /tasks/next only returns: your doing task, unassigned todo tasks, or todo tasks assigned to you.`;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
if (diagnostics.ready_todo_unassigned === 0) {
|
|
23
|
+
hint = 'No unassigned todo tasks exist. Create a todo with no assignee (omit assignee / assignee=null / assignee="unassigned") to enable pull-based routing.';
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return {
|
|
27
|
+
code: 'NO_AVAILABLE_TASKS',
|
|
28
|
+
message,
|
|
29
|
+
...(hint ? { hint } : {}),
|
|
30
|
+
diagnostics,
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=tasks-next-diagnostics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tasks-next-diagnostics.js","sourceRoot":"","sources":["../src/tasks-next-diagnostics.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,4BAA4B;AAW5B,MAAM,UAAU,4BAA4B,CAC1C,WAAsC;IAEtC,MAAM,CAAC,GAAG,WAAW,CAAC,KAAK,CAAA;IAC3B,MAAM,SAAS,GAAG,yBAAyB,WAAW,CAAC,qBAAqB,0BAA0B,WAAW,CAAC,mBAAmB,WAAW,WAAW,CAAC,oBAAoB,gBAAgB,WAAW,CAAC,yBAAyB,GAAG,CAAA;IAExO,4EAA4E;IAC5E,MAAM,OAAO,GAAG,uBAAuB,SAAS,GAAG,CAAA;IAEnD,IAAI,IAAwB,CAAA;IAE5B,IAAI,CAAC,EAAE,CAAC;QACN,sFAAsF;QACtF,IACE,WAAW,CAAC,oBAAoB,KAAK,CAAC;YACtC,WAAW,CAAC,qBAAqB,KAAK,CAAC;YACvC,WAAW,CAAC,mBAAmB,KAAK,CAAC;YACrC,WAAW,CAAC,yBAAyB,GAAG,CAAC,EACzC,CAAC;YACD,IAAI,GAAG,IAAI,CAAC,wKAAwK,CAAA;QACtL,CAAC;aAAM,IAAI,WAAW,CAAC,qBAAqB,KAAK,CAAC,IAAI,WAAW,CAAC,mBAAmB,KAAK,CAAC,EAAE,CAAC;YAC5F,IAAI,GAAG,0CAA0C,CAAC,oGAAoG,CAAA;QACxJ,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,WAAW,CAAC,qBAAqB,KAAK,CAAC,EAAE,CAAC;YAC5C,IAAI,GAAG,sJAAsJ,CAAA;QAC/J,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI,EAAE,oBAAoB;QAC1B,OAAO;QACP,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzB,WAAW;KACZ,CAAA;AACH,CAAC"}
|
package/dist/tasks.d.ts
CHANGED
|
@@ -53,7 +53,7 @@ declare class TaskManager {
|
|
|
53
53
|
metadata?: Record<string, unknown>;
|
|
54
54
|
schedule: RecurringTaskSchedule;
|
|
55
55
|
enabled?: boolean;
|
|
56
|
-
status?:
|
|
56
|
+
status?: RecurringTask['status'];
|
|
57
57
|
}): Promise<RecurringTask>;
|
|
58
58
|
listRecurringTasks(options?: {
|
|
59
59
|
enabled?: boolean;
|
|
@@ -86,7 +86,8 @@ declare class TaskManager {
|
|
|
86
86
|
private lastRecurringMaterializeAt;
|
|
87
87
|
private static readonly RECURRING_DEBOUNCE_MS;
|
|
88
88
|
listTasks(options?: {
|
|
89
|
-
|
|
89
|
+
/** Filter by one or more statuses. Accepts a single value or an array. */
|
|
90
|
+
status?: Task['status'] | Task['status'][];
|
|
90
91
|
/** Exact assignee match (legacy). Prefer assigneeIn when supporting aliases. */
|
|
91
92
|
assignee?: string;
|
|
92
93
|
/** Assignee set match (case-insensitive) */
|
package/dist/tasks.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tasks.d.ts","sourceRoot":"","sources":["../src/tasks.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,OAAO,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"tasks.d.ts","sourceRoot":"","sources":["../src/tasks.ts"],"names":[],"mappings":"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"}
|
package/dist/tasks.js
CHANGED
|
@@ -22,14 +22,14 @@ function importTasks(db, records) {
|
|
|
22
22
|
INSERT OR REPLACE INTO tasks (
|
|
23
23
|
id, title, description, status, assignee, reviewer, done_criteria,
|
|
24
24
|
created_by, created_at, updated_at, priority, blocked_by, epic_id,
|
|
25
|
-
tags, metadata, team_id, comment_count
|
|
26
|
-
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
25
|
+
tags, metadata, team_id, comment_count, due_at, scheduled_for
|
|
26
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
27
27
|
`);
|
|
28
28
|
const insertMany = db.transaction((tasks) => {
|
|
29
29
|
for (const record of tasks) {
|
|
30
30
|
const task = record;
|
|
31
|
-
insert.run(task.id, task.title, task.description ?? null, task.status, task.assignee ?? null, task.reviewer ?? null, safeJsonStringify(task.done_criteria), task.createdBy, task.createdAt, task.updatedAt, task.priority ?? null, safeJsonStringify(task.blocked_by), task.epic_id ?? null, safeJsonStringify(task.tags), safeJsonStringify(task.metadata), task.teamId ?? null, 0 // comment_count will be recalculated when comments are imported
|
|
32
|
-
);
|
|
31
|
+
insert.run(task.id, task.title, task.description ?? null, task.status, task.assignee ?? null, task.reviewer ?? null, safeJsonStringify(task.done_criteria), task.createdBy, task.createdAt, task.updatedAt, task.priority ?? null, safeJsonStringify(task.blocked_by), task.epic_id ?? null, safeJsonStringify(task.tags), safeJsonStringify(task.metadata), task.teamId ?? null, 0, // comment_count will be recalculated when comments are imported
|
|
32
|
+
task.dueAt ?? null, task.scheduledFor ?? null);
|
|
33
33
|
}
|
|
34
34
|
});
|
|
35
35
|
insertMany(records);
|
|
@@ -113,6 +113,8 @@ function rowToTask(row) {
|
|
|
113
113
|
tags: safeJsonParse(row.tags),
|
|
114
114
|
metadata: safeJsonParse(row.metadata),
|
|
115
115
|
teamId: row.team_id ?? undefined,
|
|
116
|
+
dueAt: row.due_at ?? undefined,
|
|
117
|
+
scheduledFor: row.scheduled_for ?? undefined,
|
|
116
118
|
};
|
|
117
119
|
}
|
|
118
120
|
/** Query all tasks from SQLite */
|
|
@@ -152,6 +154,9 @@ class TaskManager {
|
|
|
152
154
|
const normalized = path.trim();
|
|
153
155
|
if (normalized.length === 0)
|
|
154
156
|
return false;
|
|
157
|
+
// URLs (e.g. PR links) are valid artifact paths
|
|
158
|
+
if (/^https?:\/\//.test(normalized))
|
|
159
|
+
return true;
|
|
155
160
|
if (normalized.startsWith('/') || normalized.startsWith('~'))
|
|
156
161
|
return false;
|
|
157
162
|
if (normalized.includes('\\'))
|
|
@@ -216,6 +221,17 @@ class TaskManager {
|
|
|
216
221
|
importJsonlIfNeeded(db, TASKS_FILE, 'tasks', importTasks);
|
|
217
222
|
// Also check legacy location for migration
|
|
218
223
|
importJsonlIfNeeded(db, LEGACY_TASKS_FILE, 'tasks', importTasks);
|
|
224
|
+
// ── Backfill: normalize legacy "in-progress" → "doing" ────────────────
|
|
225
|
+
// Older callers used "in-progress" before the enum was locked to "doing".
|
|
226
|
+
// These tasks are invisible to list/next endpoints (status not in allowlist)
|
|
227
|
+
// but counted by health/stats, causing confusion and PATCH 400 loops.
|
|
228
|
+
const inProgressCount = db.prepare(`SELECT COUNT(*) as n FROM tasks WHERE status = 'in-progress'`).get().n;
|
|
229
|
+
if (inProgressCount > 0) {
|
|
230
|
+
db.prepare(`UPDATE tasks SET status = 'doing', updated_at = ? WHERE status = 'in-progress'`)
|
|
231
|
+
.run(Date.now());
|
|
232
|
+
console.log(`[Tasks] Backfilled ${inProgressCount} in-progress → doing`);
|
|
233
|
+
}
|
|
234
|
+
// ──────────────────────────────────────────────────────────────────────
|
|
219
235
|
// All tasks queried from SQLite on demand — no in-memory Map
|
|
220
236
|
const count = taskCount();
|
|
221
237
|
console.log(`[Tasks] SQLite has ${count} tasks (all queries go to DB)`);
|
|
@@ -519,9 +535,9 @@ class TaskManager {
|
|
|
519
535
|
INSERT OR REPLACE INTO tasks (
|
|
520
536
|
id, title, description, status, assignee, reviewer, done_criteria,
|
|
521
537
|
created_by, created_at, updated_at, priority, blocked_by, epic_id,
|
|
522
|
-
tags, metadata, team_id, comment_count
|
|
523
|
-
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
524
|
-
`).run(task.id, task.title, task.description ?? null, task.status, task.assignee ?? null, task.reviewer ?? null, safeJsonStringify(task.done_criteria), task.createdBy, task.createdAt, task.updatedAt, task.priority ?? null, safeJsonStringify(task.blocked_by), task.epic_id ?? null, safeJsonStringify(task.tags), safeJsonStringify(task.metadata), task.teamId ?? null, commentCount);
|
|
538
|
+
tags, metadata, team_id, comment_count, due_at, scheduled_for
|
|
539
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
540
|
+
`).run(task.id, task.title, task.description ?? null, task.status, task.assignee ?? null, task.reviewer ?? null, safeJsonStringify(task.done_criteria), task.createdBy, task.createdAt, task.updatedAt, task.priority ?? null, safeJsonStringify(task.blocked_by), task.epic_id ?? null, safeJsonStringify(task.tags), safeJsonStringify(task.metadata), task.teamId ?? null, commentCount, task.dueAt ?? null, task.scheduledFor ?? null);
|
|
525
541
|
}
|
|
526
542
|
catch (err) {
|
|
527
543
|
console.error(`[Tasks] Failed to write task ${task.id} to SQLite:`, err);
|
|
@@ -856,15 +872,22 @@ class TaskManager {
|
|
|
856
872
|
return false;
|
|
857
873
|
return task.blocked_by.some(blockerId => {
|
|
858
874
|
const blocker = queryTask(blockerId);
|
|
859
|
-
return blocker && blocker.status !== 'done';
|
|
875
|
+
return blocker && blocker.status !== 'done' && blocker.status !== 'cancelled';
|
|
860
876
|
});
|
|
861
877
|
};
|
|
862
878
|
const db = getDb();
|
|
863
879
|
const conditions = [];
|
|
864
880
|
const params = [];
|
|
865
881
|
if (options?.status) {
|
|
866
|
-
|
|
867
|
-
|
|
882
|
+
const statuses = Array.isArray(options.status) ? options.status : [options.status];
|
|
883
|
+
if (statuses.length === 1) {
|
|
884
|
+
conditions.push('status = ?');
|
|
885
|
+
params.push(statuses[0]);
|
|
886
|
+
}
|
|
887
|
+
else if (statuses.length > 1) {
|
|
888
|
+
conditions.push(`status IN (${statuses.map(() => '?').join(', ')})`);
|
|
889
|
+
params.push(...statuses);
|
|
890
|
+
}
|
|
868
891
|
}
|
|
869
892
|
const assigneeFilter = options?.assignee || options?.assignedTo;
|
|
870
893
|
const assigneeIn = options?.assigneeIn;
|
|
@@ -1143,7 +1166,7 @@ class TaskManager {
|
|
|
1143
1166
|
if (task.blocked_by && task.blocked_by.includes(completedTaskId)) {
|
|
1144
1167
|
const stillBlocked = task.blocked_by.some(blockerId => {
|
|
1145
1168
|
const blocker = queryTask(blockerId);
|
|
1146
|
-
return blocker && blocker.status !== 'done';
|
|
1169
|
+
return blocker && blocker.status !== 'done' && blocker.status !== 'cancelled';
|
|
1147
1170
|
});
|
|
1148
1171
|
if (!stillBlocked) {
|
|
1149
1172
|
unblockedTasks.push(task);
|
|
@@ -1185,7 +1208,7 @@ class TaskManager {
|
|
|
1185
1208
|
return false;
|
|
1186
1209
|
return task.blocked_by.some(blockerId => {
|
|
1187
1210
|
const blocker = queryTask(blockerId);
|
|
1188
|
-
return blocker && blocker.status !== 'done';
|
|
1211
|
+
return blocker && blocker.status !== 'done' && blocker.status !== 'cancelled';
|
|
1189
1212
|
});
|
|
1190
1213
|
};
|
|
1191
1214
|
const sortByPriority = (a, b) => {
|
|
@@ -1209,8 +1232,10 @@ class TaskManager {
|
|
|
1209
1232
|
}
|
|
1210
1233
|
}
|
|
1211
1234
|
}
|
|
1212
|
-
// Then check todo tasks: unassigned or assigned to this agent
|
|
1213
|
-
|
|
1235
|
+
// Then check todo tasks: unassigned (NULL/empty/'unassigned') or assigned to this agent
|
|
1236
|
+
// NOTE: server CreateTaskSchema historically defaulted assignee to the string "unassigned",
|
|
1237
|
+
// so we must treat that sentinel as unassigned for pull-based assignment.
|
|
1238
|
+
const todoUnassignedRows = db.prepare("SELECT * FROM tasks WHERE status = ? AND (assignee IS NULL OR TRIM(assignee) = '' OR LOWER(assignee) = 'unassigned')").all('todo');
|
|
1214
1239
|
let tasks = todoUnassignedRows.map(rowToTask).filter(t => !isBlocked(t) && filterTestTask(t));
|
|
1215
1240
|
if (agent) {
|
|
1216
1241
|
const agentNames = getAgentAliases(agent);
|
|
@@ -1227,7 +1252,7 @@ class TaskManager {
|
|
|
1227
1252
|
}
|
|
1228
1253
|
getLifecycleInstrumentation() {
|
|
1229
1254
|
const db = getDb();
|
|
1230
|
-
const activeRows = db.prepare(`SELECT * FROM tasks WHERE status NOT IN ('todo', 'done')`).all();
|
|
1255
|
+
const activeRows = db.prepare(`SELECT * FROM tasks WHERE status NOT IN ('todo', 'done', 'cancelled')`).all();
|
|
1231
1256
|
const active = activeRows.map(rowToTask);
|
|
1232
1257
|
const missingReviewer = active.filter(t => !t.reviewer || t.reviewer.trim().length === 0);
|
|
1233
1258
|
const missingDoneCriteria = active.filter(t => !t.done_criteria || t.done_criteria.length === 0);
|
|
@@ -1268,7 +1293,7 @@ class TaskManager {
|
|
|
1268
1293
|
const total = db.prepare(`SELECT COUNT(*) as count FROM tasks ${whereClause}`).get().count;
|
|
1269
1294
|
const byStatusRows = db.prepare(`SELECT status, COUNT(*) as count FROM tasks ${whereClause} GROUP BY status`).all();
|
|
1270
1295
|
const byStatus = {
|
|
1271
|
-
todo: 0, doing: 0, blocked: 0, validating: 0, done: 0, 'in-progress': 0,
|
|
1296
|
+
todo: 0, doing: 0, blocked: 0, validating: 0, done: 0, cancelled: 0, 'in-progress': 0,
|
|
1272
1297
|
};
|
|
1273
1298
|
for (const row of byStatusRows) {
|
|
1274
1299
|
byStatus[row.status] = row.count;
|