crewly 1.20.360 → 1.20.362
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/config/roles/team-leader/prompt.md +1 -1
- package/config/roles/team-leader/tl-addon.md +1 -1
- package/config/skills/team-leader/delegate-task/SKILL.md +21 -6
- package/config/skills/team-leader/delegate-task/execute.sh +12 -1
- package/dist/backend/backend/src/constants.d.ts +155 -6
- package/dist/backend/backend/src/constants.d.ts.map +1 -1
- package/dist/backend/backend/src/constants.js +155 -6
- package/dist/backend/backend/src/constants.js.map +1 -1
- package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js +7 -4
- package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js.map +1 -1
- package/dist/backend/backend/src/index.d.ts.map +1 -1
- package/dist/backend/backend/src/index.js +58 -3
- package/dist/backend/backend/src/index.js.map +1 -1
- package/dist/backend/backend/src/services/agent/boot-pressure.d.ts +19 -3
- package/dist/backend/backend/src/services/agent/boot-pressure.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/boot-pressure.js +30 -7
- package/dist/backend/backend/src/services/agent/boot-pressure.js.map +1 -1
- package/dist/backend/backend/src/services/agent/follow-through.wiring.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/follow-through.wiring.js +2 -0
- package/dist/backend/backend/src/services/agent/follow-through.wiring.js.map +1 -1
- package/dist/backend/backend/src/services/agent/handover-interrupted.d.ts +76 -0
- package/dist/backend/backend/src/services/agent/handover-interrupted.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/handover-interrupted.js +139 -0
- package/dist/backend/backend/src/services/agent/handover-interrupted.js.map +1 -0
- package/dist/backend/backend/src/services/agent/handover-pointers.d.ts +4 -0
- package/dist/backend/backend/src/services/agent/handover-pointers.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/handover-pointers.js +11 -4
- package/dist/backend/backend/src/services/agent/handover-pointers.js.map +1 -1
- package/dist/backend/backend/src/services/agent/idle-work-guard.d.ts +3 -1
- package/dist/backend/backend/src/services/agent/idle-work-guard.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/idle-work-guard.js +2 -0
- package/dist/backend/backend/src/services/agent/idle-work-guard.js.map +1 -1
- package/dist/backend/backend/src/services/agent/resource-mode-protection.d.ts +5 -1
- package/dist/backend/backend/src/services/agent/resource-mode-protection.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/resource-mode-protection.js +6 -1
- package/dist/backend/backend/src/services/agent/resource-mode-protection.js.map +1 -1
- package/dist/backend/backend/src/services/agent/runtime-session-recovery.d.ts +7 -0
- package/dist/backend/backend/src/services/agent/runtime-session-recovery.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/runtime-session-recovery.js +18 -1
- package/dist/backend/backend/src/services/agent/runtime-session-recovery.js.map +1 -1
- package/dist/backend/backend/src/services/chat-v2/chat-v2.singleton.d.ts +8 -0
- package/dist/backend/backend/src/services/chat-v2/chat-v2.singleton.d.ts.map +1 -1
- package/dist/backend/backend/src/services/chat-v2/chat-v2.singleton.js +10 -0
- package/dist/backend/backend/src/services/chat-v2/chat-v2.singleton.js.map +1 -1
- package/dist/backend/backend/src/services/open-items/open-item-extractor.d.ts +43 -2
- package/dist/backend/backend/src/services/open-items/open-item-extractor.d.ts.map +1 -1
- package/dist/backend/backend/src/services/open-items/open-item-extractor.js +124 -13
- package/dist/backend/backend/src/services/open-items/open-item-extractor.js.map +1 -1
- package/dist/backend/backend/src/services/open-items/open-items.service.d.ts +40 -1
- package/dist/backend/backend/src/services/open-items/open-items.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/open-items/open-items.service.js +76 -3
- package/dist/backend/backend/src/services/open-items/open-items.service.js.map +1 -1
- package/dist/backend/backend/src/services/open-items/open-items.wiring.d.ts +8 -0
- package/dist/backend/backend/src/services/open-items/open-items.wiring.d.ts.map +1 -1
- package/dist/backend/backend/src/services/open-items/open-items.wiring.js +19 -1
- package/dist/backend/backend/src/services/open-items/open-items.wiring.js.map +1 -1
- package/dist/backend/backend/src/services/orc/owner-completion-report.service.d.ts +35 -19
- package/dist/backend/backend/src/services/orc/owner-completion-report.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/orc/owner-completion-report.service.js +60 -63
- package/dist/backend/backend/src/services/orc/owner-completion-report.service.js.map +1 -1
- package/dist/backend/backend/src/services/orc/owner-completion-report.text.d.ts +86 -0
- package/dist/backend/backend/src/services/orc/owner-completion-report.text.d.ts.map +1 -0
- package/dist/backend/backend/src/services/orc/owner-completion-report.text.js +170 -0
- package/dist/backend/backend/src/services/orc/owner-completion-report.text.js.map +1 -0
- package/dist/backend/backend/src/services/orc/owner-completion-report.wiring.d.ts +24 -0
- package/dist/backend/backend/src/services/orc/owner-completion-report.wiring.d.ts.map +1 -1
- package/dist/backend/backend/src/services/orc/owner-completion-report.wiring.js +38 -1
- package/dist/backend/backend/src/services/orc/owner-completion-report.wiring.js.map +1 -1
- package/dist/backend/backend/src/services/orc/reply-destination.wiring.d.ts +2 -0
- package/dist/backend/backend/src/services/orc/reply-destination.wiring.d.ts.map +1 -1
- package/dist/backend/backend/src/services/orc/reply-destination.wiring.js +8 -3
- package/dist/backend/backend/src/services/orc/reply-destination.wiring.js.map +1 -1
- package/dist/backend/backend/src/services/orc/work-item-destination.d.ts +76 -0
- package/dist/backend/backend/src/services/orc/work-item-destination.d.ts.map +1 -1
- package/dist/backend/backend/src/services/orc/work-item-destination.js +83 -3
- package/dist/backend/backend/src/services/orc/work-item-destination.js.map +1 -1
- package/dist/backend/backend/src/services/orc/work-item-destination.wiring.d.ts +31 -2
- package/dist/backend/backend/src/services/orc/work-item-destination.wiring.d.ts.map +1 -1
- package/dist/backend/backend/src/services/orc/work-item-destination.wiring.js +38 -0
- package/dist/backend/backend/src/services/orc/work-item-destination.wiring.js.map +1 -1
- package/dist/backend/backend/src/services/stall/background-run-detector.d.ts +56 -0
- package/dist/backend/backend/src/services/stall/background-run-detector.d.ts.map +1 -0
- package/dist/backend/backend/src/services/stall/background-run-detector.js +93 -0
- package/dist/backend/backend/src/services/stall/background-run-detector.js.map +1 -0
- package/dist/backend/backend/src/services/stall/claim-check.d.ts +60 -0
- package/dist/backend/backend/src/services/stall/claim-check.d.ts.map +1 -0
- package/dist/backend/backend/src/services/stall/claim-check.js +98 -0
- package/dist/backend/backend/src/services/stall/claim-check.js.map +1 -0
- package/dist/backend/backend/src/services/stall/in-flight-runs.store.d.ts +110 -0
- package/dist/backend/backend/src/services/stall/in-flight-runs.store.d.ts.map +1 -0
- package/dist/backend/backend/src/services/stall/in-flight-runs.store.js +109 -0
- package/dist/backend/backend/src/services/stall/in-flight-runs.store.js.map +1 -0
- package/dist/backend/backend/src/services/stall/stall-watcher.service.d.ts +456 -0
- package/dist/backend/backend/src/services/stall/stall-watcher.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/stall/stall-watcher.service.js +854 -0
- package/dist/backend/backend/src/services/stall/stall-watcher.service.js.map +1 -0
- package/dist/backend/backend/src/services/stall/stall-watcher.wiring.d.ts +98 -0
- package/dist/backend/backend/src/services/stall/stall-watcher.wiring.d.ts.map +1 -0
- package/dist/backend/backend/src/services/stall/stall-watcher.wiring.js +217 -0
- package/dist/backend/backend/src/services/stall/stall-watcher.wiring.js.map +1 -0
- package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts +53 -0
- package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/task-pool/task-pool.service.js +162 -15
- package/dist/backend/backend/src/services/task-pool/task-pool.service.js.map +1 -1
- package/dist/backend/backend/src/services/tl-delegation/tl-delegation.service.js +1 -1
- package/dist/backend/backend/src/services/tl-delegation/tl-delegation.service.js.map +1 -1
- package/dist/backend/backend/src/types/v2/open-item.types.d.ts +2 -0
- package/dist/backend/backend/src/types/v2/open-item.types.d.ts.map +1 -1
- package/dist/backend/build-info.json +2 -2
- package/dist/cli/backend/src/constants.d.ts +155 -6
- package/dist/cli/backend/src/constants.d.ts.map +1 -1
- package/dist/cli/backend/src/constants.js +155 -6
- package/dist/cli/backend/src/constants.js.map +1 -1
- package/dist/cli/backend/src/services/agent/boot-pressure.d.ts +19 -3
- package/dist/cli/backend/src/services/agent/boot-pressure.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/boot-pressure.js +30 -7
- package/dist/cli/backend/src/services/agent/boot-pressure.js.map +1 -1
- package/dist/cli/backend/src/services/agent/handover-interrupted.d.ts +76 -0
- package/dist/cli/backend/src/services/agent/handover-interrupted.d.ts.map +1 -0
- package/dist/cli/backend/src/services/agent/handover-interrupted.js +139 -0
- package/dist/cli/backend/src/services/agent/handover-interrupted.js.map +1 -0
- package/dist/cli/backend/src/services/agent/handover-pointers.d.ts +4 -0
- package/dist/cli/backend/src/services/agent/handover-pointers.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/handover-pointers.js +11 -4
- package/dist/cli/backend/src/services/agent/handover-pointers.js.map +1 -1
- package/dist/cli/backend/src/services/agent/runtime-session-recovery.d.ts +7 -0
- package/dist/cli/backend/src/services/agent/runtime-session-recovery.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/runtime-session-recovery.js +18 -1
- package/dist/cli/backend/src/services/agent/runtime-session-recovery.js.map +1 -1
- package/dist/cli/backend/src/services/chat-v2/chat-v2.singleton.d.ts +8 -0
- package/dist/cli/backend/src/services/chat-v2/chat-v2.singleton.d.ts.map +1 -1
- package/dist/cli/backend/src/services/chat-v2/chat-v2.singleton.js +10 -0
- package/dist/cli/backend/src/services/chat-v2/chat-v2.singleton.js.map +1 -1
- package/dist/cli/backend/src/services/open-items/open-item-extractor.d.ts +43 -2
- package/dist/cli/backend/src/services/open-items/open-item-extractor.d.ts.map +1 -1
- package/dist/cli/backend/src/services/open-items/open-item-extractor.js +124 -13
- package/dist/cli/backend/src/services/open-items/open-item-extractor.js.map +1 -1
- package/dist/cli/backend/src/services/open-items/open-items.service.d.ts +40 -1
- package/dist/cli/backend/src/services/open-items/open-items.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/open-items/open-items.service.js +76 -3
- package/dist/cli/backend/src/services/open-items/open-items.service.js.map +1 -1
- package/dist/cli/backend/src/services/orc/work-item-destination.d.ts +76 -0
- package/dist/cli/backend/src/services/orc/work-item-destination.d.ts.map +1 -1
- package/dist/cli/backend/src/services/orc/work-item-destination.js +83 -3
- package/dist/cli/backend/src/services/orc/work-item-destination.js.map +1 -1
- package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts +53 -0
- package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/task-pool/task-pool.service.js +162 -15
- package/dist/cli/backend/src/services/task-pool/task-pool.service.js.map +1 -1
- package/dist/cli/backend/src/types/v2/open-item.types.d.ts +2 -0
- package/dist/cli/backend/src/types/v2/open-item.types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -20,10 +20,15 @@
|
|
|
20
20
|
* 1. after SETTLE_MS of staying closed (the lead may still hand out the next
|
|
21
21
|
* step) — unless an agent already answered in the owner's place after
|
|
22
22
|
* the work finished — the responsible agent (`receivedBy`) gets ONE
|
|
23
|
-
*
|
|
24
|
-
* 2. no agent answer there within
|
|
25
|
-
*
|
|
26
|
-
*
|
|
23
|
+
* nudge asking it to report the result there, in plain words;
|
|
24
|
+
* 2. no agent answer there within NUDGE_GRACE_MS → the harness posts ONE
|
|
25
|
+
* line there itself (as the agent's bot when it can): the deliverable in
|
|
26
|
+
* plain words, in the owner's language, no ids / links / files / sizes
|
|
27
|
+
* (crewly#1357, `owner-completion-report.text.ts`).
|
|
28
|
+
*
|
|
29
|
+
* Only a genuine owner origin forms a chain: work an agent delegated on its
|
|
30
|
+
* own initiative carries an agent origin (crewly#1357) and is never reported
|
|
31
|
+
* to the owner by the harness.
|
|
27
32
|
*
|
|
28
33
|
* Each chain is handled once (persisted, so a restart neither repeats nor
|
|
29
34
|
* forgets a step). Work added to the same place after a chain was handled
|
|
@@ -31,7 +36,8 @@
|
|
|
31
36
|
* skipped: OrcDeliveryEnforcer already keeps reminding the orc until it
|
|
32
37
|
* answers. The owner only reads; nothing here asks the owner to act.
|
|
33
38
|
*
|
|
34
|
-
* Harness text is English
|
|
39
|
+
* Harness text to agents is English; the one line to the owner is in the
|
|
40
|
+
* owner's language.
|
|
35
41
|
*
|
|
36
42
|
* @module services/orc/owner-completion-report.service
|
|
37
43
|
*/
|
|
@@ -40,6 +46,7 @@ import * as path from 'path';
|
|
|
40
46
|
import { ORCHESTRATOR_SESSION_NAME, OWNER_COMPLETION_REPORT_CONSTANTS as C } from '../../constants.js';
|
|
41
47
|
import { LoggerService } from '../core/logger.service.js';
|
|
42
48
|
import { isPastReminderCutoff, leadStaleNotice, reminderFooter } from './harness-reminder.js';
|
|
49
|
+
import { detectOwnerLanguage, fallbackLine } from './owner-completion-report.text.js';
|
|
43
50
|
import { originOfWorkItem } from './work-item-destination.js';
|
|
44
51
|
/** Statuses after which a work item is not going to do more. */
|
|
45
52
|
const CLOSED = new Set(['done', 'verified', 'cancelled', 'failed']);
|
|
@@ -158,39 +165,31 @@ export function titlesLine(items) {
|
|
|
158
165
|
return more > 0 ? `${shown.join(', ')} and ${more} more` : shown.join(', ');
|
|
159
166
|
}
|
|
160
167
|
/**
|
|
161
|
-
* What the finished items
|
|
162
|
-
*
|
|
168
|
+
* What the finished items delivered, for the owner's one line: the result
|
|
169
|
+
* summary of each succeeded work item when it has one, else its title.
|
|
163
170
|
*
|
|
164
171
|
* @param items - Chain items
|
|
165
|
-
* @returns
|
|
172
|
+
* @returns Raw texts (plain-worded later by `owner-completion-report.text.ts`)
|
|
166
173
|
*/
|
|
167
|
-
export function
|
|
168
|
-
const
|
|
174
|
+
export function deliverableTexts(items) {
|
|
175
|
+
const out = [];
|
|
169
176
|
for (const wi of items) {
|
|
170
177
|
if (isVerifyItem(wi) || !SUCCEEDED.has(wi.status))
|
|
171
178
|
continue;
|
|
172
179
|
const bag = { ...(wi.output ?? {}), ...(wi.result ?? {}) };
|
|
173
|
-
const
|
|
174
|
-
|
|
175
|
-
if (typeof bag[k] === 'string' && bag[k].trim()) {
|
|
176
|
-
parts.push(bag[k]);
|
|
177
|
-
break;
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
for (const k of ['files', 'artifacts', 'paths', 'evidencePaths', 'outputPaths']) {
|
|
181
|
-
const v = bag[k];
|
|
182
|
-
if (Array.isArray(v))
|
|
183
|
-
parts.push(v.filter((x) => typeof x === 'string').join(', '));
|
|
184
|
-
else if (typeof v === 'string')
|
|
185
|
-
parts.push(v);
|
|
186
|
-
}
|
|
187
|
-
if (!parts.length)
|
|
188
|
-
continue;
|
|
189
|
-
lines.push(`${clip(wi.title, C.TITLE_MAX_CHARS)}: ${clip(parts.join(' — '), C.EVIDENCE_LINE_MAX_CHARS)}`);
|
|
190
|
-
if (lines.length >= C.MAX_EVIDENCE_LINES)
|
|
191
|
-
break;
|
|
180
|
+
const summary = typeof bag.summary === 'string' && bag.summary.trim() ? bag.summary : null;
|
|
181
|
+
out.push(summary ?? wi.title ?? '');
|
|
192
182
|
}
|
|
193
|
-
return
|
|
183
|
+
return out;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* The titles a legacy record's `titles` line names (`"A", "B" and 2 more`).
|
|
187
|
+
*
|
|
188
|
+
* @param line - The titles line
|
|
189
|
+
* @returns Titles
|
|
190
|
+
*/
|
|
191
|
+
function titlesOf(line) {
|
|
192
|
+
return [...line.matchAll(/"([^"]+)"/g)].map((m) => m[1]);
|
|
194
193
|
}
|
|
195
194
|
/** The harness rule that finished owner-requested work is reported to the owner. */
|
|
196
195
|
export class OwnerCompletionReportService {
|
|
@@ -363,6 +362,7 @@ export class OwnerCompletionReportService {
|
|
|
363
362
|
responsible: chain.responsible,
|
|
364
363
|
workItemIds: chain.items.map((w) => w.id),
|
|
365
364
|
titles: titlesLine(chain.items),
|
|
365
|
+
deliverables: deliverableTexts(chain.items),
|
|
366
366
|
replyWorkItemId: (mine ?? last).id,
|
|
367
367
|
firstCreatedAt: chain.firstCreatedAt,
|
|
368
368
|
lastCreatedAt: chain.lastCreatedAt,
|
|
@@ -387,6 +387,7 @@ export class OwnerCompletionReportService {
|
|
|
387
387
|
if (chain.finishedAt > record.finishedAt) {
|
|
388
388
|
record.finishedAt = chain.finishedAt;
|
|
389
389
|
record.titles = titlesLine(chain.items);
|
|
390
|
+
record.deliverables = deliverableTexts(chain.items);
|
|
390
391
|
}
|
|
391
392
|
record.answerFrom = chain.workDoneAt;
|
|
392
393
|
}
|
|
@@ -419,29 +420,22 @@ export class OwnerCompletionReportService {
|
|
|
419
420
|
this.end(record, 'skipped', now);
|
|
420
421
|
return;
|
|
421
422
|
}
|
|
422
|
-
const ok = await this.deps.deliver(record.responsible, this.askText(record, place
|
|
423
|
+
const ok = await this.deps.deliver(record.responsible, this.askText(record, place)).catch(() => false);
|
|
423
424
|
record.stage = 'asked';
|
|
424
425
|
record.askedAt = now;
|
|
425
426
|
this.save();
|
|
426
427
|
this.log.info('Asked the agent to report finished owner work', { key: record.key, agent: record.responsible, delivered: ok });
|
|
427
428
|
return;
|
|
428
429
|
}
|
|
429
|
-
case 'asked':
|
|
430
|
-
if (now - Math.max(record.askedAt ?? 0, record.finishedAt) < C.REPORT_WAIT_MS || !place)
|
|
431
|
-
return;
|
|
432
|
-
const ok = await this.deps.deliver(record.responsible, this.askText(record, place, true)).catch(() => false);
|
|
433
|
-
record.stage = 'reminded';
|
|
434
|
-
record.remindedAt = now;
|
|
435
|
-
this.save();
|
|
436
|
-
this.log.info('Reminded the agent to report finished owner work', { key: record.key, agent: record.responsible, delivered: ok });
|
|
437
|
-
return;
|
|
438
|
-
}
|
|
430
|
+
case 'asked':
|
|
439
431
|
case 'reminded': {
|
|
440
|
-
|
|
432
|
+
// One nudge, then the grace period; the harness posts one plain line.
|
|
433
|
+
const nudgedAt = Math.max(record.askedAt ?? 0, record.remindedAt ?? 0, record.finishedAt);
|
|
434
|
+
if (now - nudgedAt < C.NUDGE_GRACE_MS || !place)
|
|
441
435
|
return;
|
|
442
|
-
const
|
|
443
|
-
const posted = await this.deps.postFallback(place, record.responsible, this.fallbackText(record, items)).catch(() => false);
|
|
444
|
-
this.log.info('Posted the finished owner work
|
|
436
|
+
const language = (await this.deps.ownerLanguage?.(record.origin, place).catch(() => null)) ?? detectOwnerLanguage(null);
|
|
437
|
+
const posted = await this.deps.postFallback(place, record.responsible, this.fallbackText(record, chain?.items ?? [], language)).catch(() => false);
|
|
438
|
+
this.log.info('Posted the finished owner work line for the agent', { key: record.key, agent: record.responsible, language, posted });
|
|
445
439
|
record.postedAt = now;
|
|
446
440
|
this.end(record, 'posted', now);
|
|
447
441
|
return;
|
|
@@ -457,35 +451,38 @@ export class OwnerCompletionReportService {
|
|
|
457
451
|
return this.deps.displayNameOf?.(session) ?? session;
|
|
458
452
|
}
|
|
459
453
|
/**
|
|
460
|
-
* The
|
|
454
|
+
* The one nudge asking the responsible agent for the report (crewly#1357:
|
|
455
|
+
* one nudge, then the harness posts a line itself).
|
|
461
456
|
*
|
|
462
457
|
* @param record - Chain record
|
|
463
458
|
* @param place - Where the owner asked
|
|
464
|
-
* @param
|
|
459
|
+
* @param now - Clock (epoch ms)
|
|
465
460
|
* @returns English harness text
|
|
466
461
|
*/
|
|
467
|
-
askText(record, place,
|
|
462
|
+
askText(record, place, now = Date.now()) {
|
|
468
463
|
const cmd = place.kind === 'app-comment'
|
|
469
|
-
? `${this.deps.appCommentsCmd ?? 'app-comments'} --app ${place.appId} --reply ${place.commentId} --text "<
|
|
470
|
-
: `reply --work-item ${record.replyWorkItemId} "<
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
reminderFooter(reminder ? 2 : 1, record.finishedAt, now));
|
|
464
|
+
? `${this.deps.appCommentsCmd ?? 'app-comments'} --app ${place.appId} --reply ${place.commentId} --text "<what the owner got>"`
|
|
465
|
+
: `reply --work-item ${record.replyWorkItemId} "<what the owner got>"`;
|
|
466
|
+
return (`[OWNER REPORT DUE] The work the owner asked for in ${place.label} is finished (${record.titles}). ` +
|
|
467
|
+
`Tell the owner there yourself, now: one short message in the owner's language saying what they got and where it is, in plain words — ` +
|
|
468
|
+
`no work item ids, no internal links, file paths, codecs, sizes or logs. Run: ${cmd}. ` +
|
|
469
|
+
`If nothing is posted there within ${Math.round(C.NUDGE_GRACE_MS / 60_000)} minutes, Crewly posts one line there for you.` +
|
|
470
|
+
reminderFooter(1, record.finishedAt, now));
|
|
477
471
|
}
|
|
478
472
|
/**
|
|
479
|
-
* The
|
|
473
|
+
* The one line the harness posts when the agent never reported: the
|
|
474
|
+
* deliverable in plain words, in the owner's language, and the short
|
|
475
|
+
* "sent by Crewly" marker. No ids, links, files, sizes or result dumps.
|
|
480
476
|
*
|
|
481
477
|
* @param record - Chain record
|
|
482
|
-
* @param items - The chain's items
|
|
483
|
-
* @
|
|
478
|
+
* @param items - The chain's items, when still in the pool (their summaries are preferred)
|
|
479
|
+
* @param language - The owner's language
|
|
480
|
+
* @returns The line
|
|
484
481
|
*/
|
|
485
|
-
fallbackText(record, items) {
|
|
486
|
-
const
|
|
487
|
-
const
|
|
488
|
-
return
|
|
482
|
+
fallbackText(record, items, language = 'en') {
|
|
483
|
+
const fromPool = deliverableTexts(items);
|
|
484
|
+
const deliverables = fromPool.length ? fromPool : record.deliverables?.length ? record.deliverables : titlesOf(record.titles);
|
|
485
|
+
return fallbackLine({ agentName: this.name(record.responsible), deliverables, language });
|
|
489
486
|
}
|
|
490
487
|
end(record, stage, now) {
|
|
491
488
|
record.stage = stage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"owner-completion-report.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/orc/owner-completion-report.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"owner-completion-report.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/orc/owner-completion-report.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The one line the harness posts to the owner when an agent finished
|
|
3
|
+
* owner-requested work and never reported it (crewly#1357).
|
|
4
|
+
*
|
|
5
|
+
* The owner thread is not a log: the line names the deliverable in plain
|
|
6
|
+
* words, in the owner's language, with no work item ids, links, file names,
|
|
7
|
+
* codecs, sizes or "Results:" dumps. On 2026-10-17 the fallback posted
|
|
8
|
+
* "Ella finished: <WorkItem titles> Results: <PR link, codec, file sizes>"
|
|
9
|
+
* into a video thread; the owner's reaction: 我还是收到agent发的这种message.
|
|
10
|
+
*
|
|
11
|
+
* Pure functions only.
|
|
12
|
+
*
|
|
13
|
+
* @module services/orc/owner-completion-report.text
|
|
14
|
+
*/
|
|
15
|
+
/** Languages the fallback line is written in. */
|
|
16
|
+
export type OwnerLanguage = 'en' | 'zh';
|
|
17
|
+
/**
|
|
18
|
+
* Which language the owner writes in, from a sample of their text: Chinese
|
|
19
|
+
* when at least {@link OWNER_COMPLETION_REPORT_CONSTANTS.OWNER_LANGUAGE_CJK_MIN_RATIO}
|
|
20
|
+
* of its letters are CJK, else English. An empty sample is English.
|
|
21
|
+
*
|
|
22
|
+
* @param sample - The owner's own words (one or several messages)
|
|
23
|
+
* @returns `zh` or `en`
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* detectOwnerLanguage('什么是投资'); // 'zh'
|
|
28
|
+
* detectOwnerLanguage('Record a short demo'); // 'en'
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
export declare function detectOwnerLanguage(sample: string | readonly string[] | null | undefined): OwnerLanguage;
|
|
32
|
+
/**
|
|
33
|
+
* The deliverable a work item title or summary names, in plain words: its
|
|
34
|
+
* first clause with links, ids, paths, file names, code spans, markers and
|
|
35
|
+
* parentheses holding digits removed.
|
|
36
|
+
*
|
|
37
|
+
* @param text - Title or summary
|
|
38
|
+
* @returns The plain phrase (possibly empty), at most {@link OWNER_COMPLETION_REPORT_CONSTANTS.DELIVERABLE_MAX_CHARS} characters
|
|
39
|
+
*
|
|
40
|
+
* @example
|
|
41
|
+
* ```typescript
|
|
42
|
+
* plainDeliverable('Screen recording of the tutorial page (1080p, 42 MB) — https://x.test/a.mp4');
|
|
43
|
+
* // 'Screen recording of the tutorial page'
|
|
44
|
+
* ```
|
|
45
|
+
*/
|
|
46
|
+
export declare function plainDeliverable(text: string | undefined | null): string;
|
|
47
|
+
/**
|
|
48
|
+
* The deliverables of a chain, de-duplicated, at most
|
|
49
|
+
* {@link OWNER_COMPLETION_REPORT_CONSTANTS.MAX_TITLES}.
|
|
50
|
+
*
|
|
51
|
+
* @param texts - Titles / summaries of the finished work, in order
|
|
52
|
+
* @returns Plain phrases (possibly empty)
|
|
53
|
+
*/
|
|
54
|
+
export declare function plainDeliverables(texts: readonly (string | undefined | null)[]): string[];
|
|
55
|
+
/**
|
|
56
|
+
* Join phrases the way the language does ("a, b and c" / "a、b和c").
|
|
57
|
+
*
|
|
58
|
+
* @param phrases - Plain phrases
|
|
59
|
+
* @param language - Owner language
|
|
60
|
+
* @returns One list phrase
|
|
61
|
+
*/
|
|
62
|
+
export declare function joinDeliverables(phrases: readonly string[], language: OwnerLanguage): string;
|
|
63
|
+
/** Inputs of {@link fallbackLine}. */
|
|
64
|
+
export interface FallbackLineInput {
|
|
65
|
+
/** The responsible agent's display name */
|
|
66
|
+
agentName: string;
|
|
67
|
+
/** Titles / summaries of the finished work */
|
|
68
|
+
deliverables: readonly (string | undefined | null)[];
|
|
69
|
+
/** The owner's language */
|
|
70
|
+
language: OwnerLanguage;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* The one sentence posted for the agent, plus the short "sent by Crewly"
|
|
74
|
+
* marker, in the owner's language.
|
|
75
|
+
*
|
|
76
|
+
* @param input - Agent name, deliverables, language
|
|
77
|
+
* @returns Two lines: the sentence and the marker
|
|
78
|
+
*
|
|
79
|
+
* @example
|
|
80
|
+
* ```typescript
|
|
81
|
+
* fallbackLine({ agentName: 'Ella', deliverables: ['排期里 5 张卡的文案', '教程页的录屏'], language: 'zh' });
|
|
82
|
+
* // 'Ella 做完了排期里 5 张卡的文案和教程页的录屏,细节稍后补在这里。\n— 由 Crewly 代发'
|
|
83
|
+
* ```
|
|
84
|
+
*/
|
|
85
|
+
export declare function fallbackLine(input: FallbackLineInput): string;
|
|
86
|
+
//# sourceMappingURL=owner-completion-report.text.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"owner-completion-report.text.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/orc/owner-completion-report.text.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH,iDAAiD;AACjD,MAAM,MAAM,aAAa,GAAG,IAAI,GAAG,IAAI,CAAC;AA+BxC;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,aAAa,CAMxG;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,CAsBxE;AAaD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,CAQzF;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,EAAE,QAAQ,EAAE,aAAa,GAAG,MAAM,CAM5F;AAED,sCAAsC;AACtC,MAAM,WAAW,iBAAiB;IAChC,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,YAAY,EAAE,SAAS,CAAC,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC;IACrD,2BAA2B;IAC3B,QAAQ,EAAE,aAAa,CAAC;CACzB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAQ7D"}
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The one line the harness posts to the owner when an agent finished
|
|
3
|
+
* owner-requested work and never reported it (crewly#1357).
|
|
4
|
+
*
|
|
5
|
+
* The owner thread is not a log: the line names the deliverable in plain
|
|
6
|
+
* words, in the owner's language, with no work item ids, links, file names,
|
|
7
|
+
* codecs, sizes or "Results:" dumps. On 2026-10-17 the fallback posted
|
|
8
|
+
* "Ella finished: <WorkItem titles> Results: <PR link, codec, file sizes>"
|
|
9
|
+
* into a video thread; the owner's reaction: 我还是收到agent发的这种message.
|
|
10
|
+
*
|
|
11
|
+
* Pure functions only.
|
|
12
|
+
*
|
|
13
|
+
* @module services/orc/owner-completion-report.text
|
|
14
|
+
*/
|
|
15
|
+
import { OWNER_COMPLETION_REPORT_CONSTANTS as C } from '../../constants.js';
|
|
16
|
+
/** CJK ideographs, kana and hangul. */
|
|
17
|
+
const CJK_RE = /[-ヿ㐀-䶿一-鿿가-豈-]/g;
|
|
18
|
+
/** Letters of any script (what the ratio is measured against). */
|
|
19
|
+
const LETTER_RE = /[\p{L}]/gu;
|
|
20
|
+
/** http(s) links, bare www. links and `<url|label>` Slack links. */
|
|
21
|
+
const URL_RE = /<?(?:https?:\/\/|www\.)[^\s<>|]+(?:\|[^>]*)?>?/gi;
|
|
22
|
+
/** UUIDs. */
|
|
23
|
+
const UUID_RE = /\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b/gi;
|
|
24
|
+
/** Short ids: 8+ hex chars (work item prefixes, commit shas). */
|
|
25
|
+
const HEX_ID_RE = /\b(?=[0-9a-f]*\d)(?=[0-9a-f]*[a-f])[0-9a-f]{8,}\b/gi;
|
|
26
|
+
/** Ticket ids (`CREW-305`, `TKT-12`, `#1357`). */
|
|
27
|
+
const TICKET_RE = /\b[A-Z][A-Z0-9]{1,9}-\d{1,6}\b|(?<![\w&])#\d{2,7}\b/g;
|
|
28
|
+
/** Paths: anything with a slash and no spaces that looks like a file / dir, plus `~/…` and `./…`. */
|
|
29
|
+
const PATH_RE = /(?:~|\.{1,2})?\/[\w.@~-]+(?:\/[\w.@~-]+)+\/?|\b[\w.-]+\/[\w./-]*\.[a-z0-9]{1,6}\b/gi;
|
|
30
|
+
/** Bare file names with a known extension (`clip.mp4`, `notes.md`). */
|
|
31
|
+
const FILE_RE = /\b[\w-]+\.(?:mp4|mov|webm|mkv|gif|png|jpe?g|svg|pdf|md|txt|csv|json|ya?ml|html?|tsx?|jsx?|sh|zip|docx?|xlsx?|pptx?)\b/gi;
|
|
32
|
+
/** Parentheses (ASCII and full-width) with their content. */
|
|
33
|
+
const PARENS_RE = /\(([^()]*)\)|(([^()]*))/g;
|
|
34
|
+
/** Backtick code spans. */
|
|
35
|
+
const CODE_RE = /`[^`]*`/g;
|
|
36
|
+
/** Status markers such as `[DONE]`. */
|
|
37
|
+
const MARKER_RE = /\[[A-Z_ ]{2,20}\]/g;
|
|
38
|
+
/** Where the first clause ends. */
|
|
39
|
+
const CLAUSE_END_RE = /(?:\.\s|。|;|;|\s[—–-]\s|\n|:\s|:)/;
|
|
40
|
+
/** Leftover punctuation at the ends. */
|
|
41
|
+
const EDGE_PUNCT_RE = /^[\s,.;:!?、,。;:—–\-"'“”‘’(())]+|[\s,.;:!?、,。;:—–\-"'“”‘’(())]+$/g;
|
|
42
|
+
/** Trailing words a stripped sentence may leave dangling. */
|
|
43
|
+
const DANGLING_RE = /\s+(?:in|at|to|for|of|on|from|with|under|into|via|as|by|and|or|的|在|到|于)$/i;
|
|
44
|
+
/**
|
|
45
|
+
* Which language the owner writes in, from a sample of their text: Chinese
|
|
46
|
+
* when at least {@link OWNER_COMPLETION_REPORT_CONSTANTS.OWNER_LANGUAGE_CJK_MIN_RATIO}
|
|
47
|
+
* of its letters are CJK, else English. An empty sample is English.
|
|
48
|
+
*
|
|
49
|
+
* @param sample - The owner's own words (one or several messages)
|
|
50
|
+
* @returns `zh` or `en`
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* ```typescript
|
|
54
|
+
* detectOwnerLanguage('什么是投资'); // 'zh'
|
|
55
|
+
* detectOwnerLanguage('Record a short demo'); // 'en'
|
|
56
|
+
* ```
|
|
57
|
+
*/
|
|
58
|
+
export function detectOwnerLanguage(sample) {
|
|
59
|
+
const text = Array.isArray(sample) ? sample.join('\n') : String(sample ?? '');
|
|
60
|
+
const letters = text.match(LETTER_RE)?.length ?? 0;
|
|
61
|
+
if (!letters)
|
|
62
|
+
return 'en';
|
|
63
|
+
const cjk = text.match(CJK_RE)?.length ?? 0;
|
|
64
|
+
return cjk / letters >= C.OWNER_LANGUAGE_CJK_MIN_RATIO ? 'zh' : 'en';
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* The deliverable a work item title or summary names, in plain words: its
|
|
68
|
+
* first clause with links, ids, paths, file names, code spans, markers and
|
|
69
|
+
* parentheses holding digits removed.
|
|
70
|
+
*
|
|
71
|
+
* @param text - Title or summary
|
|
72
|
+
* @returns The plain phrase (possibly empty), at most {@link OWNER_COMPLETION_REPORT_CONSTANTS.DELIVERABLE_MAX_CHARS} characters
|
|
73
|
+
*
|
|
74
|
+
* @example
|
|
75
|
+
* ```typescript
|
|
76
|
+
* plainDeliverable('Screen recording of the tutorial page (1080p, 42 MB) — https://x.test/a.mp4');
|
|
77
|
+
* // 'Screen recording of the tutorial page'
|
|
78
|
+
* ```
|
|
79
|
+
*/
|
|
80
|
+
export function plainDeliverable(text) {
|
|
81
|
+
let t = String(text ?? '').replace(/\s+/g, ' ').trim();
|
|
82
|
+
t = t.replace(MARKER_RE, ' ').replace(CODE_RE, ' ').replace(URL_RE, ' ');
|
|
83
|
+
// An aside that held a number or something internal (a file, an id) is an
|
|
84
|
+
// aside the owner does not need; one that only held words stays.
|
|
85
|
+
t = t.replace(PARENS_RE, (whole, ascii, wide) => {
|
|
86
|
+
const inner = (ascii ?? wide ?? '').trim();
|
|
87
|
+
const cleaned = stripInternal(inner).trim();
|
|
88
|
+
return /\d/.test(inner) || !cleaned || cleaned !== inner ? ' ' : whole;
|
|
89
|
+
});
|
|
90
|
+
const clause = t.split(CLAUSE_END_RE)[0] ?? '';
|
|
91
|
+
t = stripInternal(clause)
|
|
92
|
+
.replace(/\s+/g, ' ')
|
|
93
|
+
.replace(EDGE_PUNCT_RE, '')
|
|
94
|
+
.trim();
|
|
95
|
+
// Stripping can leave "Fix for and" behind: drop dangling connectives until none is left.
|
|
96
|
+
for (let prev = ''; prev !== t;) {
|
|
97
|
+
prev = t;
|
|
98
|
+
t = t.replace(DANGLING_RE, '').replace(EDGE_PUNCT_RE, '').trim();
|
|
99
|
+
}
|
|
100
|
+
if (t.length > C.DELIVERABLE_MAX_CHARS)
|
|
101
|
+
t = `${t.slice(0, C.DELIVERABLE_MAX_CHARS - 1).trimEnd()}…`;
|
|
102
|
+
return t;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Remove what is internal to the harness from a phrase: ids, paths, file
|
|
106
|
+
* names, ticket ids and short hex ids.
|
|
107
|
+
*
|
|
108
|
+
* @param text - Phrase
|
|
109
|
+
* @returns The phrase without them (spacing not yet normalised)
|
|
110
|
+
*/
|
|
111
|
+
function stripInternal(text) {
|
|
112
|
+
return text.replace(UUID_RE, ' ').replace(PATH_RE, ' ').replace(FILE_RE, ' ').replace(TICKET_RE, ' ').replace(HEX_ID_RE, ' ');
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* The deliverables of a chain, de-duplicated, at most
|
|
116
|
+
* {@link OWNER_COMPLETION_REPORT_CONSTANTS.MAX_TITLES}.
|
|
117
|
+
*
|
|
118
|
+
* @param texts - Titles / summaries of the finished work, in order
|
|
119
|
+
* @returns Plain phrases (possibly empty)
|
|
120
|
+
*/
|
|
121
|
+
export function plainDeliverables(texts) {
|
|
122
|
+
const out = [];
|
|
123
|
+
for (const text of texts) {
|
|
124
|
+
const phrase = plainDeliverable(text);
|
|
125
|
+
if (phrase && !out.some((p) => p.toLowerCase() === phrase.toLowerCase()))
|
|
126
|
+
out.push(phrase);
|
|
127
|
+
if (out.length >= C.MAX_TITLES)
|
|
128
|
+
break;
|
|
129
|
+
}
|
|
130
|
+
return out;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Join phrases the way the language does ("a, b and c" / "a、b和c").
|
|
134
|
+
*
|
|
135
|
+
* @param phrases - Plain phrases
|
|
136
|
+
* @param language - Owner language
|
|
137
|
+
* @returns One list phrase
|
|
138
|
+
*/
|
|
139
|
+
export function joinDeliverables(phrases, language) {
|
|
140
|
+
if (phrases.length === 0)
|
|
141
|
+
return '';
|
|
142
|
+
if (phrases.length === 1)
|
|
143
|
+
return phrases[0];
|
|
144
|
+
const head = phrases.slice(0, -1);
|
|
145
|
+
const last = phrases[phrases.length - 1];
|
|
146
|
+
return language === 'zh' ? `${head.join('、')}和${last}` : `${head.join(', ')} and ${last}`;
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* The one sentence posted for the agent, plus the short "sent by Crewly"
|
|
150
|
+
* marker, in the owner's language.
|
|
151
|
+
*
|
|
152
|
+
* @param input - Agent name, deliverables, language
|
|
153
|
+
* @returns Two lines: the sentence and the marker
|
|
154
|
+
*
|
|
155
|
+
* @example
|
|
156
|
+
* ```typescript
|
|
157
|
+
* fallbackLine({ agentName: 'Ella', deliverables: ['排期里 5 张卡的文案', '教程页的录屏'], language: 'zh' });
|
|
158
|
+
* // 'Ella 做完了排期里 5 张卡的文案和教程页的录屏,细节稍后补在这里。\n— 由 Crewly 代发'
|
|
159
|
+
* ```
|
|
160
|
+
*/
|
|
161
|
+
export function fallbackLine(input) {
|
|
162
|
+
const what = joinDeliverables(plainDeliverables(input.deliverables), input.language);
|
|
163
|
+
if (input.language === 'zh') {
|
|
164
|
+
const sentence = what ? `${input.agentName} 做完了${what},细节稍后补在这里。` : `${input.agentName} 把你要的事做完了,细节稍后补在这里。`;
|
|
165
|
+
return `${sentence}\n— 由 Crewly 代发`;
|
|
166
|
+
}
|
|
167
|
+
const sentence = what ? `${input.agentName} finished ${what}; the details will follow here.` : `${input.agentName} finished what you asked for; the details will follow here.`;
|
|
168
|
+
return `${sentence}\n— sent by Crewly`;
|
|
169
|
+
}
|
|
170
|
+
//# sourceMappingURL=owner-completion-report.text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"owner-completion-report.text.js","sourceRoot":"","sources":["../../../../../../backend/src/services/orc/owner-completion-report.text.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,30 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import type { ChatMessageDTO } from '../chat-v2/types.js';
|
|
9
9
|
import type { OwnerCompletionReportService, OwnerOrigin, ReportPlace } from './owner-completion-report.service.js';
|
|
10
|
+
import { type OwnerLanguage } from './owner-completion-report.text.js';
|
|
11
|
+
/** The chat-v2 reads the owner-language lookup needs (server-side, no principal). */
|
|
12
|
+
export interface OwnerLanguageChatReads {
|
|
13
|
+
/** The thread root a Slack thread is mirrored as, in a chat conversation */
|
|
14
|
+
findSlackThreadRoot(conversationId: string, slackThreadTs: string): Pick<ChatMessageDTO, 'id'> | null;
|
|
15
|
+
/** Every message of a chat thread (root + replies) */
|
|
16
|
+
listThreadForBridge(conversationId: string, rootId: string): Pick<ChatMessageDTO, 'senderType' | 'content' | 'createdAt'>[];
|
|
17
|
+
/** The owner's recent messages anywhere, newest first */
|
|
18
|
+
getRecentOwnerMessageContents(sinceMs: number, limit: number): string[];
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* The language the owner writes in at a place (crewly#1357): read off the
|
|
22
|
+
* owner's own messages in that Slack / chat thread; when the thread has none
|
|
23
|
+
* on this machine, off the owner's recent messages anywhere; null when the
|
|
24
|
+
* owner wrote nothing readable (the caller falls back to English).
|
|
25
|
+
*
|
|
26
|
+
* @param origin - Owner origin
|
|
27
|
+
* @param place - Its resolved place, when known
|
|
28
|
+
* @param chat - chat-v2 reads
|
|
29
|
+
* @param conversationOfSlackChannel - The chat conversation a Slack channel maps to
|
|
30
|
+
* @param now - Clock (epoch ms)
|
|
31
|
+
* @returns `zh` / `en`, or null
|
|
32
|
+
*/
|
|
33
|
+
export declare function ownerLanguageOf(origin: OwnerOrigin, place: ReportPlace | null, chat: OwnerLanguageChatReads, conversationOfSlackChannel: (slackChannelId: string) => string | null, now?: number): OwnerLanguage | null;
|
|
10
34
|
/** An app comment's Slack thread, when it is mirrored. */
|
|
11
35
|
export type CommentLinkLookup = (appId: string, commentId: string) => Promise<{
|
|
12
36
|
slackChannelId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"owner-completion-report.wiring.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/orc/owner-completion-report.wiring.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,4BAA4B,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"owner-completion-report.wiring.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/orc/owner-completion-report.wiring.ts"],"names":[],"mappings":"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"}
|