github-issue-tower-defence-management 1.119.2 → 1.119.4
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/.gitleaks.toml +13 -0
- package/CHANGELOG.md +14 -0
- package/bin/adapter/entry-points/handlers/notifySilentTmuxSessions.js +1 -1
- package/bin/adapter/entry-points/handlers/notifySilentTmuxSessions.js.map +1 -1
- package/bin/adapter/repositories/ConfigurableSilentSessionMessageComposer.js +4 -2
- package/bin/adapter/repositories/ConfigurableSilentSessionMessageComposer.js.map +1 -1
- package/bin/domain/usecases/DefaultSilentSessionMessageComposer.js +4 -3
- package/bin/domain/usecases/DefaultSilentSessionMessageComposer.js.map +1 -1
- package/bin/domain/usecases/HandleScheduledEventUseCase.js +24 -2
- package/bin/domain/usecases/HandleScheduledEventUseCase.js.map +1 -1
- package/package.json +1 -1
- package/src/adapter/entry-points/handlers/notifySilentTmuxSessions.test.ts +4 -1
- package/src/adapter/entry-points/handlers/notifySilentTmuxSessions.ts +1 -0
- package/src/adapter/repositories/ConfigurableSilentSessionMessageComposer.test.ts +30 -1
- package/src/adapter/repositories/ConfigurableSilentSessionMessageComposer.ts +5 -1
- package/src/domain/usecases/DefaultSilentSessionMessageComposer.test.ts +10 -0
- package/src/domain/usecases/DefaultSilentSessionMessageComposer.ts +2 -2
- package/src/domain/usecases/HandleScheduledEventUseCase.test.ts +168 -0
- package/src/domain/usecases/HandleScheduledEventUseCase.ts +37 -9
- package/types/adapter/entry-points/handlers/notifySilentTmuxSessions.d.ts.map +1 -1
- package/types/adapter/repositories/ConfigurableSilentSessionMessageComposer.d.ts +2 -1
- package/types/adapter/repositories/ConfigurableSilentSessionMessageComposer.d.ts.map +1 -1
- package/types/domain/usecases/DefaultSilentSessionMessageComposer.d.ts +1 -0
- package/types/domain/usecases/DefaultSilentSessionMessageComposer.d.ts.map +1 -1
- package/types/domain/usecases/HandleScheduledEventUseCase.d.ts.map +1 -1
package/.gitleaks.toml
CHANGED
|
@@ -7,3 +7,16 @@ title = "gitleaks config"
|
|
|
7
7
|
|
|
8
8
|
[extend]
|
|
9
9
|
useDefault = true
|
|
10
|
+
|
|
11
|
+
# Intentional credential-vault skill files.
|
|
12
|
+
# Some private repositories intentionally store login credentials as plaintext
|
|
13
|
+
# inside dedicated credential-vault skill files (the *-login-accounts/SKILL.md
|
|
14
|
+
# files under .claude/skills/). Those files are an intentional secret store, so
|
|
15
|
+
# credentials committed there are expected and must not fail the scan. Secret
|
|
16
|
+
# scanning stays active for every other file so accidental secret commits
|
|
17
|
+
# elsewhere are still caught.
|
|
18
|
+
[[allowlists]]
|
|
19
|
+
description = "Allow intentional credentials in login-accounts credential-vault skill files"
|
|
20
|
+
paths = [
|
|
21
|
+
'''(^|/)\.claude/skills/[^/]*login-accounts/SKILL\.md$''',
|
|
22
|
+
]
|
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
## [1.119.4](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/compare/v1.119.3...v1.119.4) (2026-07-05)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* **HandleScheduledEventUseCase:** deduplicate workflow incident issues in catch block ([#1136](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/issues/1136)) ([636563d](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/commit/636563d2ff4458e26ae8610c27ed6257b5c85fa4))
|
|
7
|
+
|
|
8
|
+
## [1.119.3](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/compare/v1.119.2...v1.119.3) (2026-07-02)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Bug Fixes
|
|
12
|
+
|
|
13
|
+
* **silent-monitor:** owner-call guidance requires a self-contained message and forbids scroll-back ([#1138](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/issues/1138)) ([782f958](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/commit/782f958936a099deb828ed738f7d670a050c318a))
|
|
14
|
+
|
|
1
15
|
## [1.119.2](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/compare/v1.119.1...v1.119.2) (2026-07-02)
|
|
2
16
|
|
|
3
17
|
|
|
@@ -37,7 +37,7 @@ const notifySilentTmuxSessions = async (params) => {
|
|
|
37
37
|
console.log('Silent live session notification skipped: not enabled (set silentNotificationEnabled or TDPM_SILENT_NOTIFICATION_ENABLED=true to enable).');
|
|
38
38
|
return;
|
|
39
39
|
}
|
|
40
|
-
const messageComposer = new ConfigurableSilentSessionMessageComposer_1.ConfigurableSilentSessionMessageComposer(messageTemplates, new DefaultSilentSessionMessageComposer_1.DefaultSilentSessionMessageComposer(ownerCallMarker));
|
|
40
|
+
const messageComposer = new ConfigurableSilentSessionMessageComposer_1.ConfigurableSilentSessionMessageComposer(messageTemplates, new DefaultSilentSessionMessageComposer_1.DefaultSilentSessionMessageComposer(ownerCallMarker), ownerCallMarker);
|
|
41
41
|
const useCase = new NotifySilentLiveSessionsUseCase_1.NotifySilentLiveSessionsUseCase(new LocalProcessLiveSessionProcessSnapshotProvider_1.LocalProcessLiveSessionProcessSnapshotProvider(localCommandRunner, processEnvironReader ?? new ProcFsProcessEnvironReader_1.ProcFsProcessEnvironReader()), new FileSystemInteractiveLiveSessionTranscriptResolver_1.FileSystemInteractiveLiveSessionTranscriptResolver(), new FileSystemSessionOutputActivityRepository_1.FileSystemSessionOutputActivityRepository(), createSubAgentActivityRepository(subAgentTranscriptRootDirectory, subAgentProcessMatchPattern, subAgentOutputRootDirectory, localCommandRunner, now), createOwnerCallStatusProvider(ownerCallMarker), new TmuxSilentSessionNotificationRepository_1.TmuxSilentSessionNotificationRepository(localCommandRunner), candidateDebounceStateFilePath !== null
|
|
42
42
|
? new FileSystemSilentSessionCandidateStateRepository_1.FileSystemSilentSessionCandidateStateRepository(candidateDebounceStateFilePath)
|
|
43
43
|
: new FileSystemSilentSessionCandidateStateRepository_1.FileSystemSilentSessionCandidateStateRepository(), messageComposer, new RealSleeper_1.RealSleeper(), hubTaskStatusResolver, hubTaskStatusCacheStateFilePath !== null
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notifySilentTmuxSessions.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/notifySilentTmuxSessions.ts"],"names":[],"mappings":";;;AAIA,8GASkE;AAClE,sHAAmH;AACnH,sIAAmI;AACnI,8FAA2F;AAC3F,8IAA2I;AAC3I,4HAAyH;AACzH,wHAAqH;AACrH,gHAA6G;AAC7G,4GAAyG;AACzG,kIAA+H;AAC/H,gIAA6H;AAC7H,oIAAiI;AACjI,4FAAyF;AACzF,wHAAqH;AACrH,0HAGqE;AACrE,gEAA6D;AAC7D,wIAAqI;AACrI,gJAA6I;AAwB7I,MAAM,6BAA6B,GAAG,CACpC,eAA8B,EACL,EAAE;IAC3B,IAAI,eAAe,KAAK,IAAI,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3D,OAAO,IAAI,qEAAiC,CAAC,eAAe,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,IAAI,yEAAmC,EAAE,CAAC;AACnD,CAAC,CAAC;AAEF,MAAM,gCAAgC,GAAG,CACvC,+BAA8C,EAC9C,2BAA0C,EAC1C,2BAA0C,EAC1C,kBAAsC,EACtC,GAAS,EAC0B,EAAE;IACrC,IAAI,+BAA+B,KAAK,IAAI,EAAE,CAAC;QAC7C,OAAO,IAAI,yFAA2C,CACpD,IAAI,6FAA6C,CAC/C,+BAA+B,CAChC,EACD,GAAG,CACJ,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,2FAA4C,CACrD,2BAA2B,EAC3B,IAAI,qDAAyB,CAAC,kBAAkB,CAAC,EACjD,IAAI,iFAAuC,CACzC,2BAA2B,EAC3B,GAAG,CACJ,CACF,CAAC;AACJ,CAAC,CAAC;AAEK,MAAM,wBAAwB,GAAG,KAAK,EAC3C,MAAsC,EACvB,EAAE;IACjB,MAAM,EACJ,OAAO,EACP,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,EACf,2BAA2B,EAC3B,2BAA2B,EAC3B,+BAA+B,EAC/B,0BAA0B,EAC1B,8BAA8B,EAC9B,+BAA+B,EAC/B,cAAc,EACd,qCAAqC,EACrC,8BAA8B,EAC9B,mBAAmB,EACnB,qBAAqB,EACrB,+BAA+B,EAC/B,4BAA4B,EAC5B,gBAAgB,EAChB,GAAG,GACJ,GAAG,MAAM,CAAC;IACX,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CACT,2IAA2I,CAC5I,CAAC;QACF,OAAO;IACT,CAAC;IACD,MAAM,eAAe,GAAG,IAAI,mFAAwC,CAClE,gBAAgB,EAChB,IAAI,yEAAmC,CAAC,eAAe,CAAC,
|
|
1
|
+
{"version":3,"file":"notifySilentTmuxSessions.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/notifySilentTmuxSessions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ConfigurableSilentSessionMessageComposer = void 0;
|
|
4
|
+
const DefaultSilentSessionMessageComposer_1 = require("../../domain/usecases/DefaultSilentSessionMessageComposer");
|
|
4
5
|
const silentSessionReminderSentinel_1 = require("../../domain/usecases/silentSessionReminderSentinel");
|
|
5
6
|
const withReminderSentinel = (message) => message.includes(silentSessionReminderSentinel_1.SILENT_SESSION_REMINDER_SENTINEL)
|
|
6
7
|
? message
|
|
@@ -10,14 +11,15 @@ const formatMinutes = (seconds) => {
|
|
|
10
11
|
return `${minutes}m`;
|
|
11
12
|
};
|
|
12
13
|
class ConfigurableSilentSessionMessageComposer {
|
|
13
|
-
constructor(templates, fallback) {
|
|
14
|
+
constructor(templates, fallback, ownerCallMarker = null) {
|
|
14
15
|
this.templates = templates;
|
|
15
16
|
this.fallback = fallback;
|
|
17
|
+
this.ownerCallMarker = ownerCallMarker;
|
|
16
18
|
this.composeMainStalledSection = (mainSilentSeconds) => {
|
|
17
19
|
if (this.templates.mainStalledMessage === null) {
|
|
18
20
|
return this.fallback.composeMainStalledSection(mainSilentSeconds);
|
|
19
21
|
}
|
|
20
|
-
return withReminderSentinel(this.templates.mainStalledMessage);
|
|
22
|
+
return withReminderSentinel(`${this.templates.mainStalledMessage} ${(0, DefaultSilentSessionMessageComposer_1.composeOwnerCallFormatGuidance)(this.ownerCallMarker)}`);
|
|
21
23
|
};
|
|
22
24
|
this.composeSubAgentSection = (subAgents, thresholds) => {
|
|
23
25
|
const hasIdleTemplate = this.templates.subAgentIdleMessageHeader !== null ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigurableSilentSessionMessageComposer.js","sourceRoot":"","sources":["../../../src/adapter/repositories/ConfigurableSilentSessionMessageComposer.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"ConfigurableSilentSessionMessageComposer.js","sourceRoot":"","sources":["../../../src/adapter/repositories/ConfigurableSilentSessionMessageComposer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DefaultSilentSessionMessageComposer = void 0;
|
|
3
|
+
exports.DefaultSilentSessionMessageComposer = exports.composeOwnerCallFormatGuidance = void 0;
|
|
4
4
|
const silentSessionReminderSentinel_1 = require("./silentSessionReminderSentinel");
|
|
5
5
|
const formatMinutes = (seconds) => {
|
|
6
6
|
const minutes = Math.floor(seconds / 60);
|
|
@@ -26,8 +26,9 @@ const composeOwnerCallFormatGuidance = (ownerCallMarker) => {
|
|
|
26
26
|
const markerInstruction = ownerCallMarker !== null && ownerCallMarker.length > 0
|
|
27
27
|
? `Emit the owner-call as the configured owner-call marker tag "${ownerCallMarker}" as a complete matching pair — opening marker, content, then closing marker — on a single line with no newline inside the tag.`
|
|
28
28
|
: `Emit the owner-call as the configured owner-call marker tag as a complete matching pair — opening marker, content, then closing marker — on a single line with no newline inside the tag.`;
|
|
29
|
-
return `${markerInstruction} The content between the markers MUST begin with the 🔴 emoji immediately, with no space after it. The owner's app only surfaces the notification together with its content when the exact, well-formed tag with the leading 🔴 is present; a malformed tag (a broken or missing closing marker, or a missing leading 🔴) results in only a red indicator with no readable content.`;
|
|
29
|
+
return `${markerInstruction} The content between the markers MUST begin with the 🔴 emoji immediately, with no space after it. The owner's app only surfaces the notification together with its content when the exact, well-formed tag with the leading 🔴 is present; a malformed tag (a broken or missing closing marker, or a missing leading 🔴) results in only a red indicator with no readable content. Make the owner-call message fully self-contained: the owner MUST understand the whole situation — what happened, what you are asking, and any decision needed — from this single latest owner-call message alone, without reading or scrolling back to earlier messages. NEVER tell the owner to scroll up, go back, or read previous or above messages; if context is needed, restate it inside the owner-call message itself.`;
|
|
30
30
|
};
|
|
31
|
+
exports.composeOwnerCallFormatGuidance = composeOwnerCallFormatGuidance;
|
|
31
32
|
const composeMainStalledMessage = (mainSilentSeconds, ownerCallMarker) => {
|
|
32
33
|
const minutes = Math.floor(mainSilentSeconds / 60);
|
|
33
34
|
return [
|
|
@@ -35,7 +36,7 @@ const composeMainStalledMessage = (mainSilentSeconds, ownerCallMarker) => {
|
|
|
35
36
|
`1. Every request from the owner is registered as a session task and your task list is kept current (mark tasks completed when done); verify nothing is missing or stale.`,
|
|
36
37
|
`2. Your plan is the fastest correct path: parallelize independent work across sub-agents, delegate, and remove needless serialization. Choose the fastest safe method, not the easiest.`,
|
|
37
38
|
`3. A monitor is in place that detects when any sub-agent produces no output for 5 minutes.`,
|
|
38
|
-
`4. If you are blocked on an owner decision — or once you believe all tasks are complete — do not wait passively: the owner is not notified of passive waiting and will not reply unless you raise a new call-to-user, so raise one now (to get the decision, or to ask the owner to verify completion). If you have COMPLETED or ANSWERED a request from the owner in this session, you MUST fire the owner-call to report the RESULT to the owner: completing or answering an owner's requested action is itself a reason to fire the owner-call. Completing or answering an owner request WITHOUT firing the owner-call means the owner is NEVER notified — the owner's app only surfaces this session when the owner-call fires — so the task silently stalls. If this self-check reminder keeps arriving, it is likely because an owner request was completed or answered without firing the owner-call; fire the owner-call now to report the result to the owner. ${composeOwnerCallFormatGuidance(ownerCallMarker)} If no owner input is needed yet, resume immediately and drive all remaining tasks to completion.`,
|
|
39
|
+
`4. If you are blocked on an owner decision — or once you believe all tasks are complete — do not wait passively: the owner is not notified of passive waiting and will not reply unless you raise a new call-to-user, so raise one now (to get the decision, or to ask the owner to verify completion). If you have COMPLETED or ANSWERED a request from the owner in this session, you MUST fire the owner-call to report the RESULT to the owner: completing or answering an owner's requested action is itself a reason to fire the owner-call. Completing or answering an owner request WITHOUT firing the owner-call means the owner is NEVER notified — the owner's app only surfaces this session when the owner-call fires — so the task silently stalls. If this self-check reminder keeps arriving, it is likely because an owner request was completed or answered without firing the owner-call; fire the owner-call now to report the result to the owner. ${(0, exports.composeOwnerCallFormatGuidance)(ownerCallMarker)} If no owner input is needed yet, resume immediately and drive all remaining tasks to completion.`,
|
|
39
40
|
`Also, in your next output, report an estimate of how many minutes you expect to need to finish all remaining tasks.`,
|
|
40
41
|
].join('\n');
|
|
41
42
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultSilentSessionMessageComposer.js","sourceRoot":"","sources":["../../../src/domain/usecases/DefaultSilentSessionMessageComposer.ts"],"names":[],"mappings":";;;AAKA,mFAAmF;AAEnF,MAAM,aAAa,GAAG,CAAC,OAAe,EAAU,EAAE;IAChD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IACzC,OAAO,GAAG,OAAO,GAAG,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,0BAA0B,GAAG,CACjC,aAAiC,EACzB,EAAE;IACV,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAC7B,CAAC,QAAQ,EAAE,EAAE,CACX,KAAK,QAAQ,CAAC,KAAK,mBAAmB,aAAa,CACjD,QAAQ,CAAC,aAAa,CACvB,EAAE,CACN,CAAC;IACF,OAAO;QACL,GAAG,gEAAgC,+aAA+a;QACld,GAAG,KAAK;QACR,k1BAAk1B;KACn1B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,iCAAiC,GAAG,CACxC,oBAAwC,EAChC,EAAE;IACV,MAAM,KAAK,GAAG,oBAAoB,CAAC,GAAG,CACpC,CAAC,QAAQ,EAAE,EAAE,CACX,KAAK,QAAQ,CAAC,KAAK,iBAAiB,aAAa,CAC/C,QAAQ,CAAC,cAAc,CACxB,EAAE,CACN,CAAC;IACF,OAAO;QACL,GAAG,gEAAgC,mOAAmO;QACtQ,GAAG,KAAK;QACR,qNAAqN;KACtN,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"DefaultSilentSessionMessageComposer.js","sourceRoot":"","sources":["../../../src/domain/usecases/DefaultSilentSessionMessageComposer.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,13 @@ class ProjectNotFoundError extends Error {
|
|
|
11
11
|
}
|
|
12
12
|
exports.ProjectNotFoundError = ProjectNotFoundError;
|
|
13
13
|
const SLOW_SWEEP_INTERVAL_SECONDS = 600;
|
|
14
|
+
const WORKFLOW_INCIDENT_ISSUE_TITLE = 'Error in HandleScheduledEvent / workflow incident';
|
|
15
|
+
const isTransientApiError = (error) => {
|
|
16
|
+
const msg = error.message;
|
|
17
|
+
return (/\b(401|403|429|500|502|503|504)\b/.test(msg) ||
|
|
18
|
+
/rate.?limit|RATE_LIMIT/i.test(msg) ||
|
|
19
|
+
/bad credentials/i.test(msg));
|
|
20
|
+
};
|
|
14
21
|
class HandleScheduledEventUseCase {
|
|
15
22
|
constructor(setupTowerDefenceProjectUseCase, actionAnnouncementUseCase, setWorkflowManagementIssueToStoryUseCase, clearPastNextActionUseCase, analyzeProblemByIssueUseCase, analyzeStoriesUseCase, clearDependedIssueURLUseCase, setDependedIssueUrlForOpenTaskPRsUseCase, createEstimationIssueUseCase, convertCheckboxToIssueInStoryIssueUseCase, changeStatusByStoryColorUseCase, setNoStoryIssueToStoryUseCase, createNewStoryByLabelUseCase, assignNoAssigneeIssueToManagerUseCase, updateIssueStatusByLabelUseCase, startPreparationUseCase, revertOrphanedPreparationUseCase, revertNotReadyReviewQueueIssueUseCase, updateRateLimitCacheUseCase, dailySecurityScanUseCase, dateRepository, spreadsheetRepository, projectRepository, issueRepository) {
|
|
16
23
|
this.setupTowerDefenceProjectUseCase = setupTowerDefenceProjectUseCase;
|
|
@@ -111,7 +118,8 @@ class HandleScheduledEventUseCase {
|
|
|
111
118
|
if (!(e instanceof Error)) {
|
|
112
119
|
throw e;
|
|
113
120
|
}
|
|
114
|
-
|
|
121
|
+
if (!isTransientApiError(e)) {
|
|
122
|
+
const errorBody = `${e.message}
|
|
115
123
|
\`\`\`
|
|
116
124
|
${e.stack}
|
|
117
125
|
\`\`\`
|
|
@@ -119,7 +127,21 @@ ${e.stack}
|
|
|
119
127
|
${JSON.stringify(e)}
|
|
120
128
|
\`\`\`
|
|
121
129
|
|
|
122
|
-
|
|
130
|
+
`;
|
|
131
|
+
const existingIncidentIssues = await this.issueRepository.searchIssue({
|
|
132
|
+
owner: input.org,
|
|
133
|
+
repositoryName: input.workingReport.repo,
|
|
134
|
+
type: 'issue',
|
|
135
|
+
state: 'open',
|
|
136
|
+
title: WORKFLOW_INCIDENT_ISSUE_TITLE,
|
|
137
|
+
});
|
|
138
|
+
if (existingIncidentIssues.length > 0) {
|
|
139
|
+
await this.issueRepository.createCommentByUrl(existingIncidentIssues[0].url, errorBody);
|
|
140
|
+
}
|
|
141
|
+
else {
|
|
142
|
+
await this.issueRepository.createNewIssue(input.org, input.workingReport.repo, WORKFLOW_INCIDENT_ISSUE_TITLE, errorBody, [input.manager], ['error']);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
123
145
|
throw e;
|
|
124
146
|
}
|
|
125
147
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HandleScheduledEventUseCase.js","sourceRoot":"","sources":["../../../src/domain/usecases/HandleScheduledEventUseCase.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"HandleScheduledEventUseCase.js","sourceRoot":"","sources":["../../../src/domain/usecases/HandleScheduledEventUseCase.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -232,9 +232,12 @@ describe('notifySilentTmuxSessions', () => {
|
|
|
232
232
|
const sendCall = runner.runCommand.mock.calls.find(
|
|
233
233
|
(call) => call[0] === 'tmux' && call[1][0] === 'send-keys',
|
|
234
234
|
);
|
|
235
|
-
expect(sendCall?.[1][4]).
|
|
235
|
+
expect(sendCall?.[1][4]).toContain(
|
|
236
236
|
`${SILENT_SESSION_REMINDER_SENTINEL} CUSTOM_MAIN_TEMPLATE`,
|
|
237
237
|
);
|
|
238
|
+
expect(sendCall?.[1][4]).toContain(
|
|
239
|
+
'NEVER tell the owner to scroll up, go back, or read previous or above messages',
|
|
240
|
+
);
|
|
238
241
|
});
|
|
239
242
|
|
|
240
243
|
it('suppresses the notification whenever an owner call is unanswered, regardless of how long the session has been silent', async () => {
|
|
@@ -122,6 +122,7 @@ export const notifySilentTmuxSessions = async (
|
|
|
122
122
|
const messageComposer = new ConfigurableSilentSessionMessageComposer(
|
|
123
123
|
messageTemplates,
|
|
124
124
|
new DefaultSilentSessionMessageComposer(ownerCallMarker),
|
|
125
|
+
ownerCallMarker,
|
|
125
126
|
);
|
|
126
127
|
const useCase = new NotifySilentLiveSessionsUseCase(
|
|
127
128
|
new LocalProcessLiveSessionProcessSnapshotProvider(
|
|
@@ -48,6 +48,30 @@ describe('ConfigurableSilentSessionMessageComposer', () => {
|
|
|
48
48
|
expect(fallback.composeMainStalledSection).not.toHaveBeenCalled();
|
|
49
49
|
});
|
|
50
50
|
|
|
51
|
+
it('appends the owner-call format guidance, including the self-contained and no-scroll-back requirements, to the configured main template', () => {
|
|
52
|
+
const fallback = createFallback();
|
|
53
|
+
const composer = new ConfigurableSilentSessionMessageComposer(
|
|
54
|
+
{
|
|
55
|
+
...noTemplates,
|
|
56
|
+
mainStalledMessage: 'CUSTOM_MAIN',
|
|
57
|
+
},
|
|
58
|
+
fallback,
|
|
59
|
+
'<<OWNER_CALL>>',
|
|
60
|
+
);
|
|
61
|
+
const section = composer.composeMainStalledSection(600);
|
|
62
|
+
expect(section).toContain('CUSTOM_MAIN');
|
|
63
|
+
expect(section).toContain(
|
|
64
|
+
'the configured owner-call marker tag "<<OWNER_CALL>>" as a complete matching pair',
|
|
65
|
+
);
|
|
66
|
+
expect(section).toContain('🔴');
|
|
67
|
+
expect(section).toContain(
|
|
68
|
+
'Make the owner-call message fully self-contained: the owner MUST understand the whole situation — what happened, what you are asking, and any decision needed — from this single latest owner-call message alone, without reading or scrolling back to earlier messages.',
|
|
69
|
+
);
|
|
70
|
+
expect(section).toContain(
|
|
71
|
+
'NEVER tell the owner to scroll up, go back, or read previous or above messages; if context is needed, restate it inside the owner-call message itself.',
|
|
72
|
+
);
|
|
73
|
+
});
|
|
74
|
+
|
|
51
75
|
it('uses the fallback sub-agent section when no sub-agent template is configured', () => {
|
|
52
76
|
const fallback = createFallback();
|
|
53
77
|
const composer = new ConfigurableSilentSessionMessageComposer(
|
|
@@ -168,6 +192,11 @@ describe('ConfigurableSilentSessionMessageComposer', () => {
|
|
|
168
192
|
fallback,
|
|
169
193
|
);
|
|
170
194
|
const section = composer.composeMainStalledSection(600);
|
|
171
|
-
|
|
195
|
+
const sentinelOccurrences =
|
|
196
|
+
section.split(SILENT_SESSION_REMINDER_SENTINEL).length - 1;
|
|
197
|
+
expect(sentinelOccurrences).toBe(1);
|
|
198
|
+
expect(
|
|
199
|
+
section.startsWith(`${SILENT_SESSION_REMINDER_SENTINEL} CUSTOM_MAIN`),
|
|
200
|
+
).toBe(true);
|
|
172
201
|
});
|
|
173
202
|
});
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SubAgentActivity } from '../../domain/entities/LiveSessionActivitySnapshot';
|
|
2
|
+
import { composeOwnerCallFormatGuidance } from '../../domain/usecases/DefaultSilentSessionMessageComposer';
|
|
2
3
|
import {
|
|
3
4
|
SilentSessionMessageComposer,
|
|
4
5
|
SubAgentStallThresholds,
|
|
@@ -27,13 +28,16 @@ export class ConfigurableSilentSessionMessageComposer implements SilentSessionMe
|
|
|
27
28
|
constructor(
|
|
28
29
|
private readonly templates: SilentSessionMessageTemplates,
|
|
29
30
|
private readonly fallback: SilentSessionMessageComposer,
|
|
31
|
+
private readonly ownerCallMarker: string | null = null,
|
|
30
32
|
) {}
|
|
31
33
|
|
|
32
34
|
composeMainStalledSection = (mainSilentSeconds: number): string => {
|
|
33
35
|
if (this.templates.mainStalledMessage === null) {
|
|
34
36
|
return this.fallback.composeMainStalledSection(mainSilentSeconds);
|
|
35
37
|
}
|
|
36
|
-
return withReminderSentinel(
|
|
38
|
+
return withReminderSentinel(
|
|
39
|
+
`${this.templates.mainStalledMessage} ${composeOwnerCallFormatGuidance(this.ownerCallMarker)}`,
|
|
40
|
+
);
|
|
37
41
|
};
|
|
38
42
|
|
|
39
43
|
composeSubAgentSection = (
|
|
@@ -59,6 +59,16 @@ describe('DefaultSilentSessionMessageComposer', () => {
|
|
|
59
59
|
);
|
|
60
60
|
});
|
|
61
61
|
|
|
62
|
+
it('requires the owner-call message to be fully self-contained and forbids telling the owner to scroll back', () => {
|
|
63
|
+
const section = composer.composeMainStalledSection(600);
|
|
64
|
+
expect(section).toContain(
|
|
65
|
+
'Make the owner-call message fully self-contained: the owner MUST understand the whole situation — what happened, what you are asking, and any decision needed — from this single latest owner-call message alone, without reading or scrolling back to earlier messages.',
|
|
66
|
+
);
|
|
67
|
+
expect(section).toContain(
|
|
68
|
+
'NEVER tell the owner to scroll up, go back, or read previous or above messages; if context is needed, restate it inside the owner-call message itself.',
|
|
69
|
+
);
|
|
70
|
+
});
|
|
71
|
+
|
|
62
72
|
it('instructs the agent to fire the owner-call when an owner request has been completed or answered', () => {
|
|
63
73
|
const section = composer.composeMainStalledSection(600);
|
|
64
74
|
expect(section).toContain(
|
|
@@ -42,14 +42,14 @@ const composeLongRunningSubAgentSection = (
|
|
|
42
42
|
].join('\n');
|
|
43
43
|
};
|
|
44
44
|
|
|
45
|
-
const composeOwnerCallFormatGuidance = (
|
|
45
|
+
export const composeOwnerCallFormatGuidance = (
|
|
46
46
|
ownerCallMarker: string | null,
|
|
47
47
|
): string => {
|
|
48
48
|
const markerInstruction =
|
|
49
49
|
ownerCallMarker !== null && ownerCallMarker.length > 0
|
|
50
50
|
? `Emit the owner-call as the configured owner-call marker tag "${ownerCallMarker}" as a complete matching pair — opening marker, content, then closing marker — on a single line with no newline inside the tag.`
|
|
51
51
|
: `Emit the owner-call as the configured owner-call marker tag as a complete matching pair — opening marker, content, then closing marker — on a single line with no newline inside the tag.`;
|
|
52
|
-
return `${markerInstruction} The content between the markers MUST begin with the 🔴 emoji immediately, with no space after it. The owner's app only surfaces the notification together with its content when the exact, well-formed tag with the leading 🔴 is present; a malformed tag (a broken or missing closing marker, or a missing leading 🔴) results in only a red indicator with no readable content.`;
|
|
52
|
+
return `${markerInstruction} The content between the markers MUST begin with the 🔴 emoji immediately, with no space after it. The owner's app only surfaces the notification together with its content when the exact, well-formed tag with the leading 🔴 is present; a malformed tag (a broken or missing closing marker, or a missing leading 🔴) results in only a red indicator with no readable content. Make the owner-call message fully self-contained: the owner MUST understand the whole situation — what happened, what you are asking, and any decision needed — from this single latest owner-call message alone, without reading or scrolling back to earlier messages. NEVER tell the owner to scroll up, go back, or read previous or above messages; if context is needed, restate it inside the owner-call message itself.`;
|
|
53
53
|
};
|
|
54
54
|
|
|
55
55
|
const composeMainStalledMessage = (
|
|
@@ -852,6 +852,174 @@ describe('HandleScheduledEventUseCase', () => {
|
|
|
852
852
|
});
|
|
853
853
|
});
|
|
854
854
|
|
|
855
|
+
describe('workflow incident issue deduplication in catch block', () => {
|
|
856
|
+
const errorInput = {
|
|
857
|
+
projectName: 'test-project',
|
|
858
|
+
org: 'test-org',
|
|
859
|
+
projectUrl: 'https://github.com/test-org/test-project',
|
|
860
|
+
manager: 'test-manager',
|
|
861
|
+
workingReport: {
|
|
862
|
+
repo: 'test-repo',
|
|
863
|
+
members: ['member1'],
|
|
864
|
+
spreadsheetUrl: 'https://docs.google.com/spreadsheets/test',
|
|
865
|
+
},
|
|
866
|
+
urlOfStoryView: 'https://github.com/test-org/test-project/issues',
|
|
867
|
+
disabled: false,
|
|
868
|
+
allowIssueCacheMinutes: 60,
|
|
869
|
+
};
|
|
870
|
+
|
|
871
|
+
beforeEach(() => {
|
|
872
|
+
mockIssueRepository.searchIssue.mockResolvedValue([]);
|
|
873
|
+
});
|
|
874
|
+
|
|
875
|
+
it('should create a new incident issue when none exists for a non-transient error', async () => {
|
|
876
|
+
const nonTransientError = new Error(
|
|
877
|
+
'something went wrong unexpectedly',
|
|
878
|
+
);
|
|
879
|
+
mockRevertNotReadyReviewQueueIssueUseCase.run.mockRejectedValueOnce(
|
|
880
|
+
nonTransientError,
|
|
881
|
+
);
|
|
882
|
+
|
|
883
|
+
await expect(useCase.run(errorInput)).rejects.toThrow(
|
|
884
|
+
'something went wrong unexpectedly',
|
|
885
|
+
);
|
|
886
|
+
|
|
887
|
+
expect(mockIssueRepository.searchIssue).toHaveBeenCalledWith(
|
|
888
|
+
expect.objectContaining({
|
|
889
|
+
owner: 'test-org',
|
|
890
|
+
repositoryName: 'test-repo',
|
|
891
|
+
type: 'issue',
|
|
892
|
+
state: 'open',
|
|
893
|
+
title: 'Error in HandleScheduledEvent / workflow incident',
|
|
894
|
+
}),
|
|
895
|
+
);
|
|
896
|
+
expect(mockIssueRepository.createNewIssue).toHaveBeenCalledWith(
|
|
897
|
+
'test-org',
|
|
898
|
+
'test-repo',
|
|
899
|
+
'Error in HandleScheduledEvent / workflow incident',
|
|
900
|
+
expect.stringContaining('something went wrong unexpectedly'),
|
|
901
|
+
['test-manager'],
|
|
902
|
+
['error'],
|
|
903
|
+
);
|
|
904
|
+
expect(mockIssueRepository.createCommentByUrl).not.toHaveBeenCalled();
|
|
905
|
+
});
|
|
906
|
+
|
|
907
|
+
it('should add a comment to the existing incident issue when one already exists', async () => {
|
|
908
|
+
const nonTransientError = new Error(
|
|
909
|
+
'something went wrong unexpectedly',
|
|
910
|
+
);
|
|
911
|
+
mockRevertNotReadyReviewQueueIssueUseCase.run.mockRejectedValueOnce(
|
|
912
|
+
nonTransientError,
|
|
913
|
+
);
|
|
914
|
+
const existingIssueUrl =
|
|
915
|
+
'https://github.com/test-org/test-repo/issues/42';
|
|
916
|
+
mockIssueRepository.searchIssue.mockResolvedValue([
|
|
917
|
+
{
|
|
918
|
+
url: existingIssueUrl,
|
|
919
|
+
title: 'Error in HandleScheduledEvent / workflow incident',
|
|
920
|
+
number: '42',
|
|
921
|
+
},
|
|
922
|
+
]);
|
|
923
|
+
|
|
924
|
+
await expect(useCase.run(errorInput)).rejects.toThrow(
|
|
925
|
+
'something went wrong unexpectedly',
|
|
926
|
+
);
|
|
927
|
+
|
|
928
|
+
expect(mockIssueRepository.createCommentByUrl).toHaveBeenCalledWith(
|
|
929
|
+
existingIssueUrl,
|
|
930
|
+
expect.stringContaining('something went wrong unexpectedly'),
|
|
931
|
+
);
|
|
932
|
+
expect(mockIssueRepository.createNewIssue).not.toHaveBeenCalledWith(
|
|
933
|
+
expect.anything(),
|
|
934
|
+
expect.anything(),
|
|
935
|
+
'Error in HandleScheduledEvent / workflow incident',
|
|
936
|
+
expect.anything(),
|
|
937
|
+
expect.anything(),
|
|
938
|
+
expect.anything(),
|
|
939
|
+
);
|
|
940
|
+
});
|
|
941
|
+
|
|
942
|
+
it('should not create or comment an incident issue for a transient 401 error', async () => {
|
|
943
|
+
const transientError = new Error('HttpError: 401 Unauthorized');
|
|
944
|
+
mockRevertNotReadyReviewQueueIssueUseCase.run.mockRejectedValueOnce(
|
|
945
|
+
transientError,
|
|
946
|
+
);
|
|
947
|
+
|
|
948
|
+
await expect(useCase.run(errorInput)).rejects.toThrow('401');
|
|
949
|
+
|
|
950
|
+
expect(mockIssueRepository.searchIssue).not.toHaveBeenCalled();
|
|
951
|
+
expect(mockIssueRepository.createNewIssue).not.toHaveBeenCalled();
|
|
952
|
+
expect(mockIssueRepository.createCommentByUrl).not.toHaveBeenCalled();
|
|
953
|
+
});
|
|
954
|
+
|
|
955
|
+
it('should not create or comment an incident issue for a transient 429 rate limit error', async () => {
|
|
956
|
+
const transientError = new Error('API rate limit exceeded 429');
|
|
957
|
+
mockRevertNotReadyReviewQueueIssueUseCase.run.mockRejectedValueOnce(
|
|
958
|
+
transientError,
|
|
959
|
+
);
|
|
960
|
+
|
|
961
|
+
await expect(useCase.run(errorInput)).rejects.toThrow('429');
|
|
962
|
+
|
|
963
|
+
expect(mockIssueRepository.searchIssue).not.toHaveBeenCalled();
|
|
964
|
+
expect(mockIssueRepository.createNewIssue).not.toHaveBeenCalled();
|
|
965
|
+
expect(mockIssueRepository.createCommentByUrl).not.toHaveBeenCalled();
|
|
966
|
+
});
|
|
967
|
+
|
|
968
|
+
it('should not create or comment an incident issue for a transient 502 error', async () => {
|
|
969
|
+
const transientError = new Error('502 Bad Gateway');
|
|
970
|
+
mockRevertNotReadyReviewQueueIssueUseCase.run.mockRejectedValueOnce(
|
|
971
|
+
transientError,
|
|
972
|
+
);
|
|
973
|
+
|
|
974
|
+
await expect(useCase.run(errorInput)).rejects.toThrow('502');
|
|
975
|
+
|
|
976
|
+
expect(mockIssueRepository.searchIssue).not.toHaveBeenCalled();
|
|
977
|
+
expect(mockIssueRepository.createNewIssue).not.toHaveBeenCalled();
|
|
978
|
+
expect(mockIssueRepository.createCommentByUrl).not.toHaveBeenCalled();
|
|
979
|
+
});
|
|
980
|
+
|
|
981
|
+
it('should not create or comment an incident issue for a transient 503 error', async () => {
|
|
982
|
+
const transientError = new Error('503 Service Unavailable');
|
|
983
|
+
mockRevertNotReadyReviewQueueIssueUseCase.run.mockRejectedValueOnce(
|
|
984
|
+
transientError,
|
|
985
|
+
);
|
|
986
|
+
|
|
987
|
+
await expect(useCase.run(errorInput)).rejects.toThrow('503');
|
|
988
|
+
|
|
989
|
+
expect(mockIssueRepository.searchIssue).not.toHaveBeenCalled();
|
|
990
|
+
expect(mockIssueRepository.createNewIssue).not.toHaveBeenCalled();
|
|
991
|
+
expect(mockIssueRepository.createCommentByUrl).not.toHaveBeenCalled();
|
|
992
|
+
});
|
|
993
|
+
|
|
994
|
+
it('should not create or comment an incident issue for a GraphQL RATE_LIMIT error', async () => {
|
|
995
|
+
const transientError = new Error('GraphQL error: RATE_LIMIT exceeded');
|
|
996
|
+
mockRevertNotReadyReviewQueueIssueUseCase.run.mockRejectedValueOnce(
|
|
997
|
+
transientError,
|
|
998
|
+
);
|
|
999
|
+
|
|
1000
|
+
await expect(useCase.run(errorInput)).rejects.toThrow('RATE_LIMIT');
|
|
1001
|
+
|
|
1002
|
+
expect(mockIssueRepository.searchIssue).not.toHaveBeenCalled();
|
|
1003
|
+
expect(mockIssueRepository.createNewIssue).not.toHaveBeenCalled();
|
|
1004
|
+
expect(mockIssueRepository.createCommentByUrl).not.toHaveBeenCalled();
|
|
1005
|
+
});
|
|
1006
|
+
|
|
1007
|
+
it('should not create or comment an incident issue for a bad credentials error', async () => {
|
|
1008
|
+
const transientError = new Error('Bad credentials');
|
|
1009
|
+
mockRevertNotReadyReviewQueueIssueUseCase.run.mockRejectedValueOnce(
|
|
1010
|
+
transientError,
|
|
1011
|
+
);
|
|
1012
|
+
|
|
1013
|
+
await expect(useCase.run(errorInput)).rejects.toThrow(
|
|
1014
|
+
'Bad credentials',
|
|
1015
|
+
);
|
|
1016
|
+
|
|
1017
|
+
expect(mockIssueRepository.searchIssue).not.toHaveBeenCalled();
|
|
1018
|
+
expect(mockIssueRepository.createNewIssue).not.toHaveBeenCalled();
|
|
1019
|
+
expect(mockIssueRepository.createCommentByUrl).not.toHaveBeenCalled();
|
|
1020
|
+
});
|
|
1021
|
+
});
|
|
1022
|
+
|
|
855
1023
|
describe('spreadsheet access failure error issue creation', () => {
|
|
856
1024
|
const failureInput = {
|
|
857
1025
|
projectName: 'test-project',
|
|
@@ -43,6 +43,17 @@ export class ProjectNotFoundError extends Error {
|
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
const SLOW_SWEEP_INTERVAL_SECONDS = 600;
|
|
46
|
+
const WORKFLOW_INCIDENT_ISSUE_TITLE =
|
|
47
|
+
'Error in HandleScheduledEvent / workflow incident';
|
|
48
|
+
|
|
49
|
+
const isTransientApiError = (error: Error): boolean => {
|
|
50
|
+
const msg = error.message;
|
|
51
|
+
return (
|
|
52
|
+
/\b(401|403|429|500|502|503|504)\b/.test(msg) ||
|
|
53
|
+
/rate.?limit|RATE_LIMIT/i.test(msg) ||
|
|
54
|
+
/bad credentials/i.test(msg)
|
|
55
|
+
);
|
|
56
|
+
};
|
|
46
57
|
|
|
47
58
|
export class HandleScheduledEventUseCase {
|
|
48
59
|
constructor(
|
|
@@ -244,11 +255,8 @@ export class HandleScheduledEventUseCase {
|
|
|
244
255
|
if (!(e instanceof Error)) {
|
|
245
256
|
throw e;
|
|
246
257
|
}
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
input.workingReport.repo,
|
|
250
|
-
`Error in HandleScheduledEvent / workflow incident`,
|
|
251
|
-
`${e.message}
|
|
258
|
+
if (!isTransientApiError(e)) {
|
|
259
|
+
const errorBody = `${e.message}
|
|
252
260
|
\`\`\`
|
|
253
261
|
${e.stack}
|
|
254
262
|
\`\`\`
|
|
@@ -256,10 +264,30 @@ ${e.stack}
|
|
|
256
264
|
${JSON.stringify(e)}
|
|
257
265
|
\`\`\`
|
|
258
266
|
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
267
|
+
`;
|
|
268
|
+
const existingIncidentIssues = await this.issueRepository.searchIssue({
|
|
269
|
+
owner: input.org,
|
|
270
|
+
repositoryName: input.workingReport.repo,
|
|
271
|
+
type: 'issue',
|
|
272
|
+
state: 'open',
|
|
273
|
+
title: WORKFLOW_INCIDENT_ISSUE_TITLE,
|
|
274
|
+
});
|
|
275
|
+
if (existingIncidentIssues.length > 0) {
|
|
276
|
+
await this.issueRepository.createCommentByUrl(
|
|
277
|
+
existingIncidentIssues[0].url,
|
|
278
|
+
errorBody,
|
|
279
|
+
);
|
|
280
|
+
} else {
|
|
281
|
+
await this.issueRepository.createNewIssue(
|
|
282
|
+
input.org,
|
|
283
|
+
input.workingReport.repo,
|
|
284
|
+
WORKFLOW_INCIDENT_ISSUE_TITLE,
|
|
285
|
+
errorBody,
|
|
286
|
+
[input.manager],
|
|
287
|
+
['error'],
|
|
288
|
+
);
|
|
289
|
+
}
|
|
290
|
+
}
|
|
263
291
|
throw e;
|
|
264
292
|
}
|
|
265
293
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notifySilentTmuxSessions.d.ts","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/notifySilentTmuxSessions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gEAAgE,CAAC;AAGpG,OAAO,EAAE,oBAAoB,EAAE,MAAM,kEAAkE,CAAC;AACxG,OAAO,EAEL,qBAAqB,EAOtB,MAAM,0DAA0D,CAAC;AAclE,OAAO,EAEL,6BAA6B,EAC9B,MAAM,6DAA6D,CAAC;AAKrE,MAAM,MAAM,8BAA8B,GAAG;IAC3C,OAAO,EAAE,OAAO,CAAC;IACjB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,2BAA2B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,2BAA2B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,+BAA+B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/C,0BAA0B,EAAE,MAAM,CAAC;IACnC,8BAA8B,EAAE,MAAM,CAAC;IACvC,+BAA+B,EAAE,MAAM,CAAC;IACxC,cAAc,EAAE,MAAM,CAAC;IACvB,qCAAqC,EAAE,MAAM,CAAC;IAC9C,8BAA8B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9C,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,qBAAqB,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACpD,+BAA+B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/C,4BAA4B,EAAE,MAAM,CAAC;IACrC,gBAAgB,EAAE,6BAA6B,CAAC;IAChD,GAAG,EAAE,IAAI,CAAC;CACX,CAAC;AAoCF,eAAO,MAAM,wBAAwB,GACnC,QAAQ,8BAA8B,KACrC,OAAO,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"notifySilentTmuxSessions.d.ts","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/notifySilentTmuxSessions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gEAAgE,CAAC;AAGpG,OAAO,EAAE,oBAAoB,EAAE,MAAM,kEAAkE,CAAC;AACxG,OAAO,EAEL,qBAAqB,EAOtB,MAAM,0DAA0D,CAAC;AAclE,OAAO,EAEL,6BAA6B,EAC9B,MAAM,6DAA6D,CAAC;AAKrE,MAAM,MAAM,8BAA8B,GAAG;IAC3C,OAAO,EAAE,OAAO,CAAC;IACjB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,2BAA2B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,2BAA2B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,+BAA+B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/C,0BAA0B,EAAE,MAAM,CAAC;IACnC,8BAA8B,EAAE,MAAM,CAAC;IACvC,+BAA+B,EAAE,MAAM,CAAC;IACxC,cAAc,EAAE,MAAM,CAAC;IACvB,qCAAqC,EAAE,MAAM,CAAC;IAC9C,8BAA8B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9C,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,qBAAqB,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACpD,+BAA+B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/C,4BAA4B,EAAE,MAAM,CAAC;IACrC,gBAAgB,EAAE,6BAA6B,CAAC;IAChD,GAAG,EAAE,IAAI,CAAC;CACX,CAAC;AAoCF,eAAO,MAAM,wBAAwB,GACnC,QAAQ,8BAA8B,KACrC,OAAO,CAAC,IAAI,CAyEd,CAAC;AAEF,eAAO,MAAM,0CAA0C;;;;;;;CAQ7C,CAAC"}
|
|
@@ -10,7 +10,8 @@ export type SilentSessionMessageTemplates = {
|
|
|
10
10
|
export declare class ConfigurableSilentSessionMessageComposer implements SilentSessionMessageComposer {
|
|
11
11
|
private readonly templates;
|
|
12
12
|
private readonly fallback;
|
|
13
|
-
|
|
13
|
+
private readonly ownerCallMarker;
|
|
14
|
+
constructor(templates: SilentSessionMessageTemplates, fallback: SilentSessionMessageComposer, ownerCallMarker?: string | null);
|
|
14
15
|
composeMainStalledSection: (mainSilentSeconds: number) => string;
|
|
15
16
|
composeSubAgentSection: (subAgents: SubAgentActivity[], thresholds: SubAgentStallThresholds) => string;
|
|
16
17
|
private composeIdleSection;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigurableSilentSessionMessageComposer.d.ts","sourceRoot":"","sources":["../../../src/adapter/repositories/ConfigurableSilentSessionMessageComposer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mDAAmD,CAAC;
|
|
1
|
+
{"version":3,"file":"ConfigurableSilentSessionMessageComposer.d.ts","sourceRoot":"","sources":["../../../src/adapter/repositories/ConfigurableSilentSessionMessageComposer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mDAAmD,CAAC;AAErF,OAAO,EACL,4BAA4B,EAC5B,uBAAuB,EACxB,MAAM,uEAAuE,CAAC;AAQ/E,MAAM,MAAM,6BAA6B,GAAG;IAC1C,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,yBAAyB,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,yBAAyB,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,gCAAgC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChD,gCAAgC,EAAE,MAAM,GAAG,IAAI,CAAC;CACjD,CAAC;AAOF,qBAAa,wCAAyC,YAAW,4BAA4B;IAEzF,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAFf,SAAS,EAAE,6BAA6B,EACxC,QAAQ,EAAE,4BAA4B,EACtC,eAAe,GAAE,MAAM,GAAG,IAAW;IAGxD,yBAAyB,GAAI,mBAAmB,MAAM,KAAG,MAAM,CAO7D;IAEF,sBAAsB,GACpB,WAAW,gBAAgB,EAAE,EAC7B,YAAY,uBAAuB,KAClC,MAAM,CAoDP;IAEF,OAAO,CAAC,kBAAkB,CAkBxB;IAEF,OAAO,CAAC,yBAAyB,CAkB/B;CACH"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { SubAgentActivity } from '../entities/LiveSessionActivitySnapshot';
|
|
2
2
|
import { SilentSessionMessageComposer, SubAgentStallThresholds } from './adapter-interfaces/SilentSessionMessageComposer';
|
|
3
|
+
export declare const composeOwnerCallFormatGuidance: (ownerCallMarker: string | null) => string;
|
|
3
4
|
export declare class DefaultSilentSessionMessageComposer implements SilentSessionMessageComposer {
|
|
4
5
|
private readonly ownerCallMarker;
|
|
5
6
|
constructor(ownerCallMarker?: string | null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultSilentSessionMessageComposer.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/DefaultSilentSessionMessageComposer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EACL,4BAA4B,EAC5B,uBAAuB,EACxB,MAAM,mDAAmD,CAAC;
|
|
1
|
+
{"version":3,"file":"DefaultSilentSessionMessageComposer.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/DefaultSilentSessionMessageComposer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EACL,4BAA4B,EAC5B,uBAAuB,EACxB,MAAM,mDAAmD,CAAC;AAwC3D,eAAO,MAAM,8BAA8B,GACzC,iBAAiB,MAAM,GAAG,IAAI,KAC7B,MAMF,CAAC;AAiBF,qBAAa,mCAAoC,YAAW,4BAA4B;IAC1E,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAAf,eAAe,GAAE,MAAM,GAAG,IAAW;IAElE,yBAAyB,GAAI,mBAAmB,MAAM,KAAG,MAAM,CAE7D;IAEF,sBAAsB,GACpB,WAAW,gBAAgB,EAAE,EAC7B,YAAY,uBAAuB,KAClC,MAAM,CAiBP;CACH"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HandleScheduledEventUseCase.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/HandleScheduledEventUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,wCAAwC,EAAE,MAAM,4CAA4C,CAAC;AACtG,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAC;AAC1F,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,wCAAwC,EAAE,MAAM,4CAA4C,CAAC;AACtG,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,yCAAyC,EAAE,MAAM,6CAA6C,CAAC;AACxG,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,qCAAqC,EAAE,MAAM,yCAAyC,CAAC;AAChG,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACxB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AACtF,OAAO,EAAE,qCAAqC,EAAE,MAAM,yCAAyC,CAAC;AAGhG,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,4BAA4B,CAAC;AAEpC,qBAAa,oBAAqB,SAAQ,KAAK;gBACjC,OAAO,EAAE,MAAM;CAI5B;
|
|
1
|
+
{"version":3,"file":"HandleScheduledEventUseCase.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/HandleScheduledEventUseCase.ts"],"names":[],"mappings":"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"}
|