crewly 1.20.127 → 1.20.129
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/templates/growth-marketing-team.json +12 -1
- package/config/templates/personal-assistant-team.json +28 -0
- package/dist/backend/backend/src/constants.d.ts +75 -0
- package/dist/backend/backend/src/constants.d.ts.map +1 -1
- package/dist/backend/backend/src/constants.js +81 -0
- package/dist/backend/backend/src/constants.js.map +1 -1
- package/dist/backend/backend/src/controllers/chat/chat.controller.d.ts +49 -0
- package/dist/backend/backend/src/controllers/chat/chat.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/chat/chat.controller.js +135 -106
- package/dist/backend/backend/src/controllers/chat/chat.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/onboarding/index.d.ts +1 -0
- package/dist/backend/backend/src/controllers/onboarding/index.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/onboarding/index.js +1 -0
- package/dist/backend/backend/src/controllers/onboarding/index.js.map +1 -1
- package/dist/backend/backend/src/controllers/onboarding/onboarding-checklist.controller.d.ts +38 -0
- package/dist/backend/backend/src/controllers/onboarding/onboarding-checklist.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/onboarding/onboarding-checklist.controller.js +106 -0
- package/dist/backend/backend/src/controllers/onboarding/onboarding-checklist.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/onboarding/onboarding-checklist.routes.d.ts +24 -0
- package/dist/backend/backend/src/controllers/onboarding/onboarding-checklist.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/onboarding/onboarding-checklist.routes.js +34 -0
- package/dist/backend/backend/src/controllers/onboarding/onboarding-checklist.routes.js.map +1 -0
- package/dist/backend/backend/src/index.d.ts.map +1 -1
- package/dist/backend/backend/src/index.js +48 -1
- package/dist/backend/backend/src/index.js.map +1 -1
- package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/routes/api.routes.js +5 -0
- package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
- package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.d.ts +33 -0
- package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.js +63 -0
- package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/relogin-agent-resumer.service.d.ts +76 -0
- package/dist/backend/backend/src/services/agent/relogin-agent-resumer.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/relogin-agent-resumer.service.js +108 -0
- package/dist/backend/backend/src/services/agent/relogin-agent-resumer.service.js.map +1 -0
- package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.js +10 -0
- package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.js.map +1 -1
- package/dist/backend/backend/src/services/harness/harness-relogin.service.d.ts +361 -0
- package/dist/backend/backend/src/services/harness/harness-relogin.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/harness/harness-relogin.service.js +756 -0
- package/dist/backend/backend/src/services/harness/harness-relogin.service.js.map +1 -0
- package/dist/backend/backend/src/services/harness/harness.service.d.ts +16 -1
- package/dist/backend/backend/src/services/harness/harness.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/harness/harness.service.js +28 -1
- package/dist/backend/backend/src/services/harness/harness.service.js.map +1 -1
- package/dist/backend/backend/src/services/harness/harness.types.d.ts +16 -1
- package/dist/backend/backend/src/services/harness/harness.types.d.ts.map +1 -1
- package/dist/backend/backend/src/services/harness/harness.types.js.map +1 -1
- package/dist/backend/backend/src/services/harness/login-expiry-rules.d.ts +75 -0
- package/dist/backend/backend/src/services/harness/login-expiry-rules.d.ts.map +1 -0
- package/dist/backend/backend/src/services/harness/login-expiry-rules.js +159 -0
- package/dist/backend/backend/src/services/harness/login-expiry-rules.js.map +1 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-checklist.factory.d.ts +45 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-checklist.factory.d.ts.map +1 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-checklist.factory.js +103 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-checklist.factory.js.map +1 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-checklist.service.d.ts +301 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-checklist.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-checklist.service.js +365 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-checklist.service.js.map +1 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-state.store.d.ts +89 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-state.store.d.ts.map +1 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-state.store.js +122 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-state.store.js.map +1 -0
- package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts +21 -1
- package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js +39 -0
- package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-relogin-dm.service.d.ts +80 -0
- package/dist/backend/backend/src/services/slack/slack-relogin-dm.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/slack/slack-relogin-dm.service.js +127 -0
- package/dist/backend/backend/src/services/slack/slack-relogin-dm.service.js.map +1 -0
- package/dist/backend/backend/src/services/template/template.service.d.ts +15 -1
- package/dist/backend/backend/src/services/template/template.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/template/template.service.js +22 -1
- package/dist/backend/backend/src/services/template/template.service.js.map +1 -1
- package/dist/backend/backend/src/types/team-template.types.d.ts +30 -0
- package/dist/backend/backend/src/types/team-template.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/team-template.types.js +24 -0
- package/dist/backend/backend/src/types/team-template.types.js.map +1 -1
- package/dist/backend/build-info.json +2 -2
- package/dist/cli/backend/src/constants.d.ts +75 -0
- package/dist/cli/backend/src/constants.d.ts.map +1 -1
- package/dist/cli/backend/src/constants.js +81 -0
- package/dist/cli/backend/src/constants.js.map +1 -1
- package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.d.ts +33 -0
- package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.js +63 -0
- package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.js.map +1 -1
- package/dist/cli/backend/src/services/harness/harness-relogin.service.d.ts +361 -0
- package/dist/cli/backend/src/services/harness/harness-relogin.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/harness/harness-relogin.service.js +756 -0
- package/dist/cli/backend/src/services/harness/harness-relogin.service.js.map +1 -0
- package/dist/cli/backend/src/services/harness/harness.service.d.ts +16 -1
- package/dist/cli/backend/src/services/harness/harness.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/harness/harness.service.js +28 -1
- package/dist/cli/backend/src/services/harness/harness.service.js.map +1 -1
- package/dist/cli/backend/src/services/harness/harness.types.d.ts +16 -1
- package/dist/cli/backend/src/services/harness/harness.types.d.ts.map +1 -1
- package/dist/cli/backend/src/services/harness/harness.types.js.map +1 -1
- package/dist/cli/backend/src/services/harness/login-expiry-rules.d.ts +75 -0
- package/dist/cli/backend/src/services/harness/login-expiry-rules.d.ts.map +1 -0
- package/dist/cli/backend/src/services/harness/login-expiry-rules.js +159 -0
- package/dist/cli/backend/src/services/harness/login-expiry-rules.js.map +1 -0
- package/dist/cli/backend/src/services/onboarding/onboarding-checklist.service.d.ts +301 -0
- package/dist/cli/backend/src/services/onboarding/onboarding-checklist.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/onboarding/onboarding-checklist.service.js +365 -0
- package/dist/cli/backend/src/services/onboarding/onboarding-checklist.service.js.map +1 -0
- package/dist/cli/backend/src/services/onboarding/onboarding-state.store.d.ts +89 -0
- package/dist/cli/backend/src/services/onboarding/onboarding-state.store.d.ts.map +1 -0
- package/dist/cli/backend/src/services/onboarding/onboarding-state.store.js +122 -0
- package/dist/cli/backend/src/services/onboarding/onboarding-state.store.js.map +1 -0
- package/dist/cli/backend/src/services/skill/skill-tier.service.d.ts +116 -0
- package/dist/cli/backend/src/services/skill/skill-tier.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/skill/skill-tier.service.js +155 -0
- package/dist/cli/backend/src/services/skill/skill-tier.service.js.map +1 -0
- package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.d.ts +21 -1
- package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
- package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.js +39 -0
- package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
- package/dist/cli/backend/src/services/template/template.service.d.ts +152 -0
- package/dist/cli/backend/src/services/template/template.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/template/template.service.js +506 -0
- package/dist/cli/backend/src/services/template/template.service.js.map +1 -0
- package/dist/cli/backend/src/types/team-template.types.d.ts +30 -0
- package/dist/cli/backend/src/types/team-template.types.d.ts.map +1 -1
- package/dist/cli/backend/src/types/team-template.types.js +24 -0
- package/dist/cli/backend/src/types/team-template.types.js.map +1 -1
- package/dist/cli/cli/src/commands/onboard-checklist.d.ts +152 -0
- package/dist/cli/cli/src/commands/onboard-checklist.d.ts.map +1 -0
- package/dist/cli/cli/src/commands/onboard-checklist.js +241 -0
- package/dist/cli/cli/src/commands/onboard-checklist.js.map +1 -0
- package/dist/cli/cli/src/commands/onboard.d.ts +87 -6
- package/dist/cli/cli/src/commands/onboard.d.ts.map +1 -1
- package/dist/cli/cli/src/commands/onboard.js +203 -37
- package/dist/cli/cli/src/commands/onboard.js.map +1 -1
- package/dist/cli/cli/src/constants.d.ts +5 -0
- package/dist/cli/cli/src/constants.d.ts.map +1 -1
- package/dist/cli/cli/src/constants.js +5 -0
- package/dist/cli/cli/src/constants.js.map +1 -1
- package/dist/cli/cli/src/index.js +2 -1
- package/dist/cli/cli/src/index.js.map +1 -1
- package/dist/cli/cli/src/utils/templates.d.ts +27 -0
- package/dist/cli/cli/src/utils/templates.d.ts.map +1 -1
- package/dist/cli/cli/src/utils/templates.js +29 -0
- package/dist/cli/cli/src/utils/templates.js.map +1 -1
- package/frontend/dist/assets/index-2bdb57b9.css +42 -0
- package/frontend/dist/assets/{index-aaf65055.js → index-5b98bf77.js} +285 -285
- package/frontend/dist/index.html +2 -2
- package/package.json +1 -1
- package/frontend/dist/assets/index-0a2f783c.css +0 -42
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"harness-relogin.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/harness/harness-relogin.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
import { HarnessApiKeyService } from './harness-api-key.service.js';
|
|
14
14
|
import { HarnessInstallService } from './harness-install.service.js';
|
|
15
15
|
import { HarnessStatusService } from './harness-status.service.js';
|
|
16
|
-
import { type HarnessId, type HarnessLogger, type HarnessOverview, type HarnessStatus, type InstallJob, type LoginSession } from './harness.types.js';
|
|
16
|
+
import { type HarnessId, type HarnessLogger, type HarnessOverview, type HarnessStatus, type ReloginPending, type InstallJob, type LoginSession } from './harness.types.js';
|
|
17
17
|
import { LoginBrokerService } from './login-broker.service.js';
|
|
18
18
|
import { OrcHarnessStore, type DefaultRuntimeUpdater } from './orc-harness.store.js';
|
|
19
19
|
/** Error for an id that is not a harness (REST: 404). */
|
|
@@ -39,6 +39,8 @@ export declare class HarnessService {
|
|
|
39
39
|
readonly broker: LoginBrokerService;
|
|
40
40
|
readonly apiKeys: HarnessApiKeyService;
|
|
41
41
|
readonly orc: OrcHarnessStore;
|
|
42
|
+
/** Pending Slack re-login per harness (set by the backend's re-login coordinator; the CLI has none) */
|
|
43
|
+
private reloginPendingProvider;
|
|
42
44
|
/**
|
|
43
45
|
* @param parts - Service parts
|
|
44
46
|
*/
|
|
@@ -57,6 +59,19 @@ export declare class HarnessService {
|
|
|
57
59
|
* @returns Harness statuses, the orc harness and system tools
|
|
58
60
|
*/
|
|
59
61
|
getOverview(): Promise<HarnessOverview>;
|
|
62
|
+
/**
|
|
63
|
+
* Provide the pending-re-login lookup shown in {@link getOverview}.
|
|
64
|
+
*
|
|
65
|
+
* @param provider - Lookup, or null to clear
|
|
66
|
+
*/
|
|
67
|
+
setReloginPendingProvider(provider: ((harnessId: HarnessId) => ReloginPending | null) | null): void;
|
|
68
|
+
/**
|
|
69
|
+
* The pending Slack re-login for a harness.
|
|
70
|
+
*
|
|
71
|
+
* @param harnessId - Harness id
|
|
72
|
+
* @returns The pending re-login, or null (also when no provider is set or it throws)
|
|
73
|
+
*/
|
|
74
|
+
getReloginPending(harnessId: HarnessId): ReloginPending | null;
|
|
60
75
|
/**
|
|
61
76
|
* Status of one harness.
|
|
62
77
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harness.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/harness/harness.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAGN,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,KAAK,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAErF,yDAAyD;AACzD,qBAAa,mBAAoB,SAAQ,KAAK;aAIjB,EAAE,EAAE,MAAM;IAHtC;;OAEG;gBACyB,EAAE,EAAE,MAAM;CAItC;AAED,wDAAwD;AACxD,MAAM,WAAW,mBAAmB;IACnC,MAAM,EAAE,oBAAoB,CAAC;IAC7B,OAAO,EAAE,qBAAqB,CAAC;IAC/B,MAAM,EAAE,kBAAkB,CAAC;IAC3B,OAAO,EAAE,oBAAoB,CAAC;IAC9B,GAAG,EAAE,eAAe,CAAC;CACrB;AAED,+EAA+E;AAC/E,qBAAa,cAAc;IAC1B,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAC;IACvC,QAAQ,CAAC,GAAG,EAAE,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"harness.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/harness/harness.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,6 +37,8 @@ export class HarnessService {
|
|
|
37
37
|
broker;
|
|
38
38
|
apiKeys;
|
|
39
39
|
orc;
|
|
40
|
+
/** Pending Slack re-login per harness (set by the backend's re-login coordinator; the CLI has none) */
|
|
41
|
+
reloginPendingProvider = null;
|
|
40
42
|
/**
|
|
41
43
|
* @param parts - Service parts
|
|
42
44
|
*/
|
|
@@ -65,9 +67,34 @@ export class HarnessService {
|
|
|
65
67
|
* @returns Harness statuses, the orc harness and system tools
|
|
66
68
|
*/
|
|
67
69
|
async getOverview() {
|
|
68
|
-
const [
|
|
70
|
+
const [statuses, orcHarness] = await Promise.all([this.status.listStatuses(), this.orc.get()]);
|
|
71
|
+
const harnesses = statuses.map((status) => ({ ...status, reloginPending: this.getReloginPending(status.id) }));
|
|
69
72
|
return { harnesses, orcHarness, systemTools: this.status.getSystemTools() };
|
|
70
73
|
}
|
|
74
|
+
/**
|
|
75
|
+
* Provide the pending-re-login lookup shown in {@link getOverview}.
|
|
76
|
+
*
|
|
77
|
+
* @param provider - Lookup, or null to clear
|
|
78
|
+
*/
|
|
79
|
+
setReloginPendingProvider(provider) {
|
|
80
|
+
this.reloginPendingProvider = provider;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* The pending Slack re-login for a harness.
|
|
84
|
+
*
|
|
85
|
+
* @param harnessId - Harness id
|
|
86
|
+
* @returns The pending re-login, or null (also when no provider is set or it throws)
|
|
87
|
+
*/
|
|
88
|
+
getReloginPending(harnessId) {
|
|
89
|
+
if (!this.reloginPendingProvider)
|
|
90
|
+
return null;
|
|
91
|
+
try {
|
|
92
|
+
return this.reloginPendingProvider(harnessId);
|
|
93
|
+
}
|
|
94
|
+
catch {
|
|
95
|
+
return null;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
71
98
|
/**
|
|
72
99
|
* Status of one harness.
|
|
73
100
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harness.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/harness/harness.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EACN,qBAAqB,EACrB,WAAW,
|
|
1
|
+
{"version":3,"file":"harness.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/harness/harness.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -49,9 +49,24 @@ export interface SystemToolStatus {
|
|
|
49
49
|
installed: boolean;
|
|
50
50
|
installHint: string;
|
|
51
51
|
}
|
|
52
|
+
/**
|
|
53
|
+
* A re-login over Slack that is waiting for the owner (Phase 2): Crewly
|
|
54
|
+
* noticed the harness login expired and started a broker login session.
|
|
55
|
+
*/
|
|
56
|
+
export interface ReloginPending {
|
|
57
|
+
harnessId: HarnessId;
|
|
58
|
+
/** Login broker session the owner is asked to finish */
|
|
59
|
+
sessionId: string;
|
|
60
|
+
/** ISO timestamp the broker session started */
|
|
61
|
+
startedAt: string;
|
|
62
|
+
}
|
|
63
|
+
/** One harness in `GET /api/harness`: its status plus any pending re-login. */
|
|
64
|
+
export interface HarnessOverviewEntry extends HarnessStatus {
|
|
65
|
+
reloginPending: ReloginPending | null;
|
|
66
|
+
}
|
|
52
67
|
/** Body of `GET /api/harness`. */
|
|
53
68
|
export interface HarnessOverview {
|
|
54
|
-
harnesses:
|
|
69
|
+
harnesses: HarnessOverviewEntry[];
|
|
55
70
|
orcHarness: string | null;
|
|
56
71
|
systemTools: SystemToolStatus[];
|
|
57
72
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harness.types.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/harness/harness.types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,8DAA8D;AAC9D,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,iBAAiB,CAAC,GAAG,CAAC,CAAC,MAAM,OAAO,iBAAiB,CAAC,GAAG,CAAC,CAAC;AAE3F,0CAA0C;AAC1C,eAAO,MAAM,WAAW,EAAE,SAAS,SAAS,EAAyC,CAAC;AAEtF,6CAA6C;AAC7C,MAAM,MAAM,aAAa,GAAG,cAAc,GAAG,SAAS,GAAG,QAAQ,CAAC;AAElE,6BAA6B;AAC7B,eAAO,MAAM,gBAAgB,EAAE,SAAS,aAAa,EAA0C,CAAC;AAEhG;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEnD,8CAA8C;AAC9C,MAAM,WAAW,kBAAkB;IAClC,EAAE,EAAE,aAAa,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,eAAe,CAAC;CACtB;AAED,0CAA0C;AAC1C,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,YAAY,GAAG,SAAS,CAAC;AAEhE,kDAAkD;AAClD,MAAM,WAAW,aAAa;IAC7B,EAAE,EAAE,SAAS,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,eAAe,EAAE,OAAO,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,+FAA+F;IAC/F,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,kBAAkB,EAAE,CAAC;CACnC;AAED,8CAA8C;AAC9C,MAAM,WAAW,gBAAgB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACpB;AAED,kCAAkC;AAClC,MAAM,WAAW,eAAe;IAC/B,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"harness.types.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/harness/harness.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harness.types.js","sourceRoot":"","sources":["../../../../../../backend/src/services/harness/harness.types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAKvD,0CAA0C;AAC1C,MAAM,CAAC,MAAM,WAAW,GAAyB,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;AAKtF,6BAA6B;AAC7B,MAAM,CAAC,MAAM,gBAAgB,GAA6B,CAAC,cAAc,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"harness.types.js","sourceRoot":"","sources":["../../../../../../backend/src/services/harness/harness.types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAKvD,0CAA0C;AAC1C,MAAM,CAAC,MAAM,WAAW,GAAyB,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;AAKtF,6BAA6B;AAC7B,MAAM,CAAC,MAAM,gBAAgB,GAA6B,CAAC,cAAc,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AAsFhG,gFAAgF;AAChF,MAAM,CAAC,MAAM,qBAAqB,GAAiC,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;AAmBrH;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,KAAc;IACzC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAK,WAAiC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACxF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,KAAc;IAC7C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAK,gBAAsC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC7F,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAwB;IAC5D,OAAO,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC9C,CAAC;AAUD,2DAA2D;AAC3D,MAAM,CAAC,MAAM,qBAAqB,GAAkB;IACnD,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS;IACrB,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS;IACrB,KAAK,EAAE,GAAG,EAAE,CAAC,SAAS;IACtB,KAAK,EAAE,GAAG,EAAE,CAAC,SAAS;CACtB,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Login expiry rules — per-harness patterns that mean "this agent's harness
|
|
3
|
+
* login has expired and a human has to sign in again".
|
|
4
|
+
*
|
|
5
|
+
* Used by the OAuth re-login monitor on agent terminal output (live PTY
|
|
6
|
+
* chunks and the periodic screen sweep). A match is handed to the harness
|
|
7
|
+
* re-login coordinator (harness-relogin.service.ts), which runs one broker
|
|
8
|
+
* login per harness and asks the owner over Slack.
|
|
9
|
+
*
|
|
10
|
+
* Output is normalized with {@link normalizeTerminalOutput} first, and every
|
|
11
|
+
* pattern is matched against the normalized text and its spaceless copy,
|
|
12
|
+
* because Claude Code places words with cursor moves instead of spaces.
|
|
13
|
+
* Patterns therefore use `\s*` between words.
|
|
14
|
+
*
|
|
15
|
+
* Wording sources:
|
|
16
|
+
* - Claude Code 2.1.282, from the binary (`strings`, 2026-09-25):
|
|
17
|
+
* `Login expired · Please run /login`, `OAuth token revoked · Please run
|
|
18
|
+
* /login`, `Not logged in · Please run /login`, `API Error: 401 Invalid
|
|
19
|
+
* API key · Please run /login`, `Session expired. Please run /login to sign
|
|
20
|
+
* in again.`, and the API's own `OAuth token has expired` /
|
|
21
|
+
* `OAuth token has been revoked` inside an `authentication_error`.
|
|
22
|
+
* Deliberately NOT matched: the warning `Your login expires in 3 days ·
|
|
23
|
+
* run /login to renew` (the login still works).
|
|
24
|
+
* - Codex (codex-rs auth refresh errors and the Responses API 401): `Your
|
|
25
|
+
* access token could not be refreshed because your refresh token has
|
|
26
|
+
* expired`, `Provided authentication token is expired`,
|
|
27
|
+
* `"code":"token_expired"`, `unexpected status 401 Unauthorized`.
|
|
28
|
+
*
|
|
29
|
+
* UI messages require Claude's `·` separator, so an agent that merely reads
|
|
30
|
+
* source code mentioning "please run /login" does not trip them; API errors
|
|
31
|
+
* require the `authentication_error` / `401` context in the same text.
|
|
32
|
+
*
|
|
33
|
+
* @module services/harness/login-expiry-rules
|
|
34
|
+
*/
|
|
35
|
+
import type { HarnessId } from './harness.types.js';
|
|
36
|
+
/** One expiry rule: every pattern must match (AND). */
|
|
37
|
+
export interface LoginExpiryRule {
|
|
38
|
+
/** Stable id, used in logs (never contains output) */
|
|
39
|
+
id: string;
|
|
40
|
+
harnessId: HarnessId;
|
|
41
|
+
/** All must match the normalized text or its spaceless copy */
|
|
42
|
+
all: readonly RegExp[];
|
|
43
|
+
}
|
|
44
|
+
/** What {@link detectLoginExpiry} found. */
|
|
45
|
+
export interface LoginExpiryMatch {
|
|
46
|
+
harnessId: HarnessId;
|
|
47
|
+
/** Id of the rule that matched */
|
|
48
|
+
ruleId: string;
|
|
49
|
+
}
|
|
50
|
+
/** Claude Code expiry rules. */
|
|
51
|
+
export declare const CLAUDE_EXPIRY_RULES: readonly LoginExpiryRule[];
|
|
52
|
+
/** Codex expiry rules. */
|
|
53
|
+
export declare const CODEX_EXPIRY_RULES: readonly LoginExpiryRule[];
|
|
54
|
+
/**
|
|
55
|
+
* Expiry rules for a harness (or for every harness when the runtime is unknown).
|
|
56
|
+
*
|
|
57
|
+
* @param harnessId - Harness / runtime id, or null
|
|
58
|
+
* @returns Rules to try
|
|
59
|
+
*/
|
|
60
|
+
export declare function getLoginExpiryRules(harnessId: string | null): readonly LoginExpiryRule[];
|
|
61
|
+
/**
|
|
62
|
+
* Find an expired-login message in agent terminal output.
|
|
63
|
+
*
|
|
64
|
+
* @param output - Raw PTY output (escape sequences allowed) or captured screen text
|
|
65
|
+
* @param harnessId - The agent's runtime (a harness id), or null to try every harness
|
|
66
|
+
* @returns The harness whose login expired and the rule that matched, or null
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* ```ts
|
|
70
|
+
* detectLoginExpiry(' ⎿ Login expired · Please run /login', 'claude-code');
|
|
71
|
+
* // { harnessId: 'claude-code', ruleId: 'claude.login_expired' }
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
export declare function detectLoginExpiry(output: string, harnessId: string | null): LoginExpiryMatch | null;
|
|
75
|
+
//# sourceMappingURL=login-expiry-rules.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"login-expiry-rules.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/harness/login-expiry-rules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAGpD,uDAAuD;AACvD,MAAM,WAAW,eAAe;IAC/B,sDAAsD;IACtD,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,SAAS,CAAC;IACrB,+DAA+D;IAC/D,GAAG,EAAE,SAAS,MAAM,EAAE,CAAC;CACvB;AAED,4CAA4C;AAC5C,MAAM,WAAW,gBAAgB;IAChC,SAAS,EAAE,SAAS,CAAC;IACrB,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAC;CACf;AAKD,gCAAgC;AAChC,eAAO,MAAM,mBAAmB,EAAE,SAAS,eAAe,EAyCzD,CAAC;AAEF,0BAA0B;AAC1B,eAAO,MAAM,kBAAkB,EAAE,SAAS,eAAe,EAqBxD,CAAC;AAQF;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,eAAe,EAAE,CAGxF;AAcD;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,gBAAgB,GAAG,IAAI,CAWnG"}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Login expiry rules — per-harness patterns that mean "this agent's harness
|
|
3
|
+
* login has expired and a human has to sign in again".
|
|
4
|
+
*
|
|
5
|
+
* Used by the OAuth re-login monitor on agent terminal output (live PTY
|
|
6
|
+
* chunks and the periodic screen sweep). A match is handed to the harness
|
|
7
|
+
* re-login coordinator (harness-relogin.service.ts), which runs one broker
|
|
8
|
+
* login per harness and asks the owner over Slack.
|
|
9
|
+
*
|
|
10
|
+
* Output is normalized with {@link normalizeTerminalOutput} first, and every
|
|
11
|
+
* pattern is matched against the normalized text and its spaceless copy,
|
|
12
|
+
* because Claude Code places words with cursor moves instead of spaces.
|
|
13
|
+
* Patterns therefore use `\s*` between words.
|
|
14
|
+
*
|
|
15
|
+
* Wording sources:
|
|
16
|
+
* - Claude Code 2.1.282, from the binary (`strings`, 2026-09-25):
|
|
17
|
+
* `Login expired · Please run /login`, `OAuth token revoked · Please run
|
|
18
|
+
* /login`, `Not logged in · Please run /login`, `API Error: 401 Invalid
|
|
19
|
+
* API key · Please run /login`, `Session expired. Please run /login to sign
|
|
20
|
+
* in again.`, and the API's own `OAuth token has expired` /
|
|
21
|
+
* `OAuth token has been revoked` inside an `authentication_error`.
|
|
22
|
+
* Deliberately NOT matched: the warning `Your login expires in 3 days ·
|
|
23
|
+
* run /login to renew` (the login still works).
|
|
24
|
+
* - Codex (codex-rs auth refresh errors and the Responses API 401): `Your
|
|
25
|
+
* access token could not be refreshed because your refresh token has
|
|
26
|
+
* expired`, `Provided authentication token is expired`,
|
|
27
|
+
* `"code":"token_expired"`, `unexpected status 401 Unauthorized`.
|
|
28
|
+
*
|
|
29
|
+
* UI messages require Claude's `·` separator, so an agent that merely reads
|
|
30
|
+
* source code mentioning "please run /login" does not trip them; API errors
|
|
31
|
+
* require the `authentication_error` / `401` context in the same text.
|
|
32
|
+
*
|
|
33
|
+
* @module services/harness/login-expiry-rules
|
|
34
|
+
*/
|
|
35
|
+
import { HARNESS_CONSTANTS } from '../../constants.js';
|
|
36
|
+
import { normalizeTerminalOutput } from './login-rules.js';
|
|
37
|
+
/** API error context: an authentication error or an HTTP 401. */
|
|
38
|
+
const AUTH_ERROR_CONTEXT = /authentication_error|API\s*Error|\b401\b/i;
|
|
39
|
+
/** Claude Code expiry rules. */
|
|
40
|
+
export const CLAUDE_EXPIRY_RULES = [
|
|
41
|
+
{
|
|
42
|
+
id: 'claude.api_oauth_expired',
|
|
43
|
+
harnessId: HARNESS_CONSTANTS.IDS.CLAUDE_CODE,
|
|
44
|
+
all: [/OAuth\s*(?:access\s*)?token\s*(?:has\s*)?expired/i, AUTH_ERROR_CONTEXT],
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
id: 'claude.api_oauth_revoked',
|
|
48
|
+
harnessId: HARNESS_CONSTANTS.IDS.CLAUDE_CODE,
|
|
49
|
+
all: [/OAuth\s*(?:access\s*)?token\s*has\s*been\s*revoked/i, AUTH_ERROR_CONTEXT],
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
id: 'claude.api_invalid_credentials',
|
|
53
|
+
harnessId: HARNESS_CONSTANTS.IDS.CLAUDE_CODE,
|
|
54
|
+
all: [/Invalid\s*authentication\s*credentials/i, AUTH_ERROR_CONTEXT],
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
id: 'claude.login_expired',
|
|
58
|
+
harnessId: HARNESS_CONSTANTS.IDS.CLAUDE_CODE,
|
|
59
|
+
all: [/Login\s*expired\s*·\s*(?:Please\s*)?run\s*\/login/i],
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
id: 'claude.token_revoked',
|
|
63
|
+
harnessId: HARNESS_CONSTANTS.IDS.CLAUDE_CODE,
|
|
64
|
+
all: [/OAuth\s*token\s*revoked\s*·\s*(?:Please\s*)?run\s*\/login/i],
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
id: 'claude.not_logged_in',
|
|
68
|
+
harnessId: HARNESS_CONSTANTS.IDS.CLAUDE_CODE,
|
|
69
|
+
all: [/Not\s*logged\s*in\s*·\s*(?:Please\s*)?run\s*\/login/i],
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
id: 'claude.api_401_run_login',
|
|
73
|
+
harnessId: HARNESS_CONSTANTS.IDS.CLAUDE_CODE,
|
|
74
|
+
all: [/API\s*Error:?\s*401\b[^\n]*·\s*Please\s*run\s*\/login/i],
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
id: 'claude.session_expired',
|
|
78
|
+
harnessId: HARNESS_CONSTANTS.IDS.CLAUDE_CODE,
|
|
79
|
+
all: [/session\s*(?:has\s*)?expired\.\s*Please\s*run\s*\/login/i],
|
|
80
|
+
},
|
|
81
|
+
];
|
|
82
|
+
/** Codex expiry rules. */
|
|
83
|
+
export const CODEX_EXPIRY_RULES = [
|
|
84
|
+
{
|
|
85
|
+
id: 'codex.refresh_failed',
|
|
86
|
+
harnessId: HARNESS_CONSTANTS.IDS.CODEX_CLI,
|
|
87
|
+
all: [/access\s*token\s*could\s*not\s*be\s*refreshed/i],
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
id: 'codex.refresh_token_invalid',
|
|
91
|
+
harnessId: HARNESS_CONSTANTS.IDS.CODEX_CLI,
|
|
92
|
+
all: [/refresh\s*token\s*(?:has\s*expired|was\s*already\s*used|was\s*revoked)/i],
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
id: 'codex.api_token_expired',
|
|
96
|
+
harnessId: HARNESS_CONSTANTS.IDS.CODEX_CLI,
|
|
97
|
+
all: [/Provided\s*authentication\s*token\s*is\s*expired|"code"\s*:\s*"token_expired"/i],
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
id: 'codex.api_401',
|
|
101
|
+
harnessId: HARNESS_CONSTANTS.IDS.CODEX_CLI,
|
|
102
|
+
all: [/unexpected\s*status\s*401\s*Unauthorized/i],
|
|
103
|
+
},
|
|
104
|
+
];
|
|
105
|
+
/** Every rule, by harness. */
|
|
106
|
+
const RULES_BY_HARNESS = {
|
|
107
|
+
[HARNESS_CONSTANTS.IDS.CLAUDE_CODE]: CLAUDE_EXPIRY_RULES,
|
|
108
|
+
[HARNESS_CONSTANTS.IDS.CODEX_CLI]: CODEX_EXPIRY_RULES,
|
|
109
|
+
};
|
|
110
|
+
/**
|
|
111
|
+
* Expiry rules for a harness (or for every harness when the runtime is unknown).
|
|
112
|
+
*
|
|
113
|
+
* @param harnessId - Harness / runtime id, or null
|
|
114
|
+
* @returns Rules to try
|
|
115
|
+
*/
|
|
116
|
+
export function getLoginExpiryRules(harnessId) {
|
|
117
|
+
if (harnessId === null)
|
|
118
|
+
return [...CLAUDE_EXPIRY_RULES, ...CODEX_EXPIRY_RULES];
|
|
119
|
+
return RULES_BY_HARNESS[harnessId] ?? [];
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Whether a pattern matches the normalized text or its spaceless copy.
|
|
123
|
+
*
|
|
124
|
+
* @param pattern - Pattern
|
|
125
|
+
* @param screen - Normalized screen
|
|
126
|
+
* @returns True on a match
|
|
127
|
+
*/
|
|
128
|
+
function matches(pattern, screen) {
|
|
129
|
+
const nonGlobal = new RegExp(pattern.source, pattern.flags.replace('g', ''));
|
|
130
|
+
return nonGlobal.test(screen.text) || nonGlobal.test(screen.spaceless);
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Find an expired-login message in agent terminal output.
|
|
134
|
+
*
|
|
135
|
+
* @param output - Raw PTY output (escape sequences allowed) or captured screen text
|
|
136
|
+
* @param harnessId - The agent's runtime (a harness id), or null to try every harness
|
|
137
|
+
* @returns The harness whose login expired and the rule that matched, or null
|
|
138
|
+
*
|
|
139
|
+
* @example
|
|
140
|
+
* ```ts
|
|
141
|
+
* detectLoginExpiry(' ⎿ Login expired · Please run /login', 'claude-code');
|
|
142
|
+
* // { harnessId: 'claude-code', ruleId: 'claude.login_expired' }
|
|
143
|
+
* ```
|
|
144
|
+
*/
|
|
145
|
+
export function detectLoginExpiry(output, harnessId) {
|
|
146
|
+
if (!output)
|
|
147
|
+
return null;
|
|
148
|
+
const rules = getLoginExpiryRules(harnessId);
|
|
149
|
+
if (rules.length === 0)
|
|
150
|
+
return null;
|
|
151
|
+
const screen = normalizeTerminalOutput(output);
|
|
152
|
+
for (const rule of rules) {
|
|
153
|
+
if (rule.all.every((pattern) => matches(pattern, screen))) {
|
|
154
|
+
return { harnessId: rule.harnessId, ruleId: rule.id };
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
return null;
|
|
158
|
+
}
|
|
159
|
+
//# sourceMappingURL=login-expiry-rules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"login-expiry-rules.js","sourceRoot":"","sources":["../../../../../../backend/src/services/harness/login-expiry-rules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,uBAAuB,EAAyB,MAAM,kBAAkB,CAAC;AAkBlF,iEAAiE;AACjE,MAAM,kBAAkB,GAAG,2CAA2C,CAAC;AAEvE,gCAAgC;AAChC,MAAM,CAAC,MAAM,mBAAmB,GAA+B;IAC9D;QACC,EAAE,EAAE,0BAA0B;QAC9B,SAAS,EAAE,iBAAiB,CAAC,GAAG,CAAC,WAAW;QAC5C,GAAG,EAAE,CAAC,mDAAmD,EAAE,kBAAkB,CAAC;KAC9E;IACD;QACC,EAAE,EAAE,0BAA0B;QAC9B,SAAS,EAAE,iBAAiB,CAAC,GAAG,CAAC,WAAW;QAC5C,GAAG,EAAE,CAAC,qDAAqD,EAAE,kBAAkB,CAAC;KAChF;IACD;QACC,EAAE,EAAE,gCAAgC;QACpC,SAAS,EAAE,iBAAiB,CAAC,GAAG,CAAC,WAAW;QAC5C,GAAG,EAAE,CAAC,yCAAyC,EAAE,kBAAkB,CAAC;KACpE;IACD;QACC,EAAE,EAAE,sBAAsB;QAC1B,SAAS,EAAE,iBAAiB,CAAC,GAAG,CAAC,WAAW;QAC5C,GAAG,EAAE,CAAC,oDAAoD,CAAC;KAC3D;IACD;QACC,EAAE,EAAE,sBAAsB;QAC1B,SAAS,EAAE,iBAAiB,CAAC,GAAG,CAAC,WAAW;QAC5C,GAAG,EAAE,CAAC,4DAA4D,CAAC;KACnE;IACD;QACC,EAAE,EAAE,sBAAsB;QAC1B,SAAS,EAAE,iBAAiB,CAAC,GAAG,CAAC,WAAW;QAC5C,GAAG,EAAE,CAAC,sDAAsD,CAAC;KAC7D;IACD;QACC,EAAE,EAAE,0BAA0B;QAC9B,SAAS,EAAE,iBAAiB,CAAC,GAAG,CAAC,WAAW;QAC5C,GAAG,EAAE,CAAC,wDAAwD,CAAC;KAC/D;IACD;QACC,EAAE,EAAE,wBAAwB;QAC5B,SAAS,EAAE,iBAAiB,CAAC,GAAG,CAAC,WAAW;QAC5C,GAAG,EAAE,CAAC,0DAA0D,CAAC;KACjE;CACD,CAAC;AAEF,0BAA0B;AAC1B,MAAM,CAAC,MAAM,kBAAkB,GAA+B;IAC7D;QACC,EAAE,EAAE,sBAAsB;QAC1B,SAAS,EAAE,iBAAiB,CAAC,GAAG,CAAC,SAAS;QAC1C,GAAG,EAAE,CAAC,gDAAgD,CAAC;KACvD;IACD;QACC,EAAE,EAAE,6BAA6B;QACjC,SAAS,EAAE,iBAAiB,CAAC,GAAG,CAAC,SAAS;QAC1C,GAAG,EAAE,CAAC,yEAAyE,CAAC;KAChF;IACD;QACC,EAAE,EAAE,yBAAyB;QAC7B,SAAS,EAAE,iBAAiB,CAAC,GAAG,CAAC,SAAS;QAC1C,GAAG,EAAE,CAAC,gFAAgF,CAAC;KACvF;IACD;QACC,EAAE,EAAE,eAAe;QACnB,SAAS,EAAE,iBAAiB,CAAC,GAAG,CAAC,SAAS;QAC1C,GAAG,EAAE,CAAC,2CAA2C,CAAC;KAClD;CACD,CAAC;AAEF,8BAA8B;AAC9B,MAAM,gBAAgB,GAAyD;IAC9E,CAAC,iBAAiB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,mBAAmB;IACxD,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,kBAAkB;CACrD,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,SAAwB;IAC3D,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO,CAAC,GAAG,mBAAmB,EAAE,GAAG,kBAAkB,CAAC,CAAC;IAC/E,OAAO,gBAAgB,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;AAC1C,CAAC;AAED;;;;;;GAMG;AACH,SAAS,OAAO,CAAC,OAAe,EAAE,MAAwB;IACzD,MAAM,SAAS,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IAC7E,OAAO,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AACxE,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAc,EAAE,SAAwB;IACzE,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,MAAM,KAAK,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAC7C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACpC,MAAM,MAAM,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;IAC/C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;YAC3D,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;QACvD,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Real wiring of the onboarding checklist (backend singleton).
|
|
3
|
+
*
|
|
4
|
+
* Kept apart from `onboarding-checklist.service.ts` so the service can be
|
|
5
|
+
* tested with plain fakes and the CLI can import the service without pulling
|
|
6
|
+
* in the backend's singletons.
|
|
7
|
+
*
|
|
8
|
+
* @module services/onboarding/onboarding-checklist.factory
|
|
9
|
+
*/
|
|
10
|
+
import { OnboardingChecklistService, type HarnessStepDetail, type OnboardingChecklistDeps, type OrchestratorSendResult } from './onboarding-checklist.service.js';
|
|
11
|
+
/**
|
|
12
|
+
* The orchestrator harness's state, read the way `/api/harness` reads it but
|
|
13
|
+
* without the npm "latest version" lookup (the checklist only needs
|
|
14
|
+
* installed + login).
|
|
15
|
+
*
|
|
16
|
+
* @returns Harness step detail
|
|
17
|
+
*/
|
|
18
|
+
export declare function readOrcHarnessState(): Promise<HarnessStepDetail>;
|
|
19
|
+
/**
|
|
20
|
+
* Hand a message to the orchestrator through the chat path.
|
|
21
|
+
*
|
|
22
|
+
* @param content - Message
|
|
23
|
+
* @param metadata - Chat metadata
|
|
24
|
+
* @returns Delivery result
|
|
25
|
+
*/
|
|
26
|
+
export declare function sendViaChat(content: string, metadata: Record<string, unknown>): Promise<OrchestratorSendResult>;
|
|
27
|
+
/**
|
|
28
|
+
* Real dependencies.
|
|
29
|
+
*
|
|
30
|
+
* @returns Dependencies backed by the backend's services
|
|
31
|
+
*/
|
|
32
|
+
export declare function createDefaultOnboardingDeps(): OnboardingChecklistDeps;
|
|
33
|
+
/**
|
|
34
|
+
* The backend's onboarding checklist service.
|
|
35
|
+
*
|
|
36
|
+
* @returns The singleton
|
|
37
|
+
*/
|
|
38
|
+
export declare function getOnboardingChecklistService(): OnboardingChecklistService;
|
|
39
|
+
/**
|
|
40
|
+
* Replace or clear the singleton (tests).
|
|
41
|
+
*
|
|
42
|
+
* @param service - Service to use, or null to clear
|
|
43
|
+
*/
|
|
44
|
+
export declare function setOnboardingChecklistServiceForTesting(service: OnboardingChecklistService | null): void;
|
|
45
|
+
//# sourceMappingURL=onboarding-checklist.factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"onboarding-checklist.factory.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/onboarding/onboarding-checklist.factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAYH,OAAO,EACN,0BAA0B,EAC1B,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC3B,MAAM,mCAAmC,CAAC;AAE3C;;;;;;GAMG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAYtE;AAED;;;;;;GAMG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAQrH;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,IAAI,uBAAuB,CAkBrE;AAID;;;;GAIG;AACH,wBAAgB,6BAA6B,IAAI,0BAA0B,CAG1E;AAED;;;;GAIG;AACH,wBAAgB,uCAAuC,CAAC,OAAO,EAAE,0BAA0B,GAAG,IAAI,GAAG,IAAI,CAExG"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Real wiring of the onboarding checklist (backend singleton).
|
|
3
|
+
*
|
|
4
|
+
* Kept apart from `onboarding-checklist.service.ts` so the service can be
|
|
5
|
+
* tested with plain fakes and the CLI can import the service without pulling
|
|
6
|
+
* in the backend's singletons.
|
|
7
|
+
*
|
|
8
|
+
* @module services/onboarding/onboarding-checklist.factory
|
|
9
|
+
*/
|
|
10
|
+
import { getHarnessService } from '../harness/harness.service.js';
|
|
11
|
+
import { getHarnessDefinition } from '../harness/harness-registry.js';
|
|
12
|
+
import { isHarnessId } from '../harness/harness.types.js';
|
|
13
|
+
import { StorageService } from '../core/storage.service.js';
|
|
14
|
+
import { TemplateService } from '../template/template.service.js';
|
|
15
|
+
import { getChatV2Service } from '../chat-v2/chat-v2.singleton.js';
|
|
16
|
+
import { CloudClientService } from '../cloud/cloud-client.service.js';
|
|
17
|
+
import { getSlackService } from '../slack/slack.service.js';
|
|
18
|
+
import { sendChatMessageToOrchestrator } from '../../controllers/chat/chat.controller.js';
|
|
19
|
+
import { OnboardingStateStore } from './onboarding-state.store.js';
|
|
20
|
+
import { OnboardingChecklistService, } from './onboarding-checklist.service.js';
|
|
21
|
+
/**
|
|
22
|
+
* The orchestrator harness's state, read the way `/api/harness` reads it but
|
|
23
|
+
* without the npm "latest version" lookup (the checklist only needs
|
|
24
|
+
* installed + login).
|
|
25
|
+
*
|
|
26
|
+
* @returns Harness step detail
|
|
27
|
+
*/
|
|
28
|
+
export async function readOrcHarnessState() {
|
|
29
|
+
const harness = getHarnessService();
|
|
30
|
+
const orcHarness = await harness.orc.get();
|
|
31
|
+
if (!orcHarness)
|
|
32
|
+
return { orcHarness: null, installed: false, loginState: null };
|
|
33
|
+
// A runtime outside the harness list (crewly-agent, opencode…) is set up
|
|
34
|
+
// elsewhere; setup has nothing to offer it.
|
|
35
|
+
const def = isHarnessId(orcHarness) ? getHarnessDefinition(orcHarness) : undefined;
|
|
36
|
+
if (!def)
|
|
37
|
+
return { orcHarness, installed: true, loginState: 'unknown' };
|
|
38
|
+
const installed = await harness.status.getInstalledInfo(def);
|
|
39
|
+
if (!installed.installed)
|
|
40
|
+
return { orcHarness, installed: false, loginState: null };
|
|
41
|
+
const login = await harness.status.getLoginInfo(def, installed.path);
|
|
42
|
+
return { orcHarness, installed: true, loginState: login.loginState };
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Hand a message to the orchestrator through the chat path.
|
|
46
|
+
*
|
|
47
|
+
* @param content - Message
|
|
48
|
+
* @param metadata - Chat metadata
|
|
49
|
+
* @returns Delivery result
|
|
50
|
+
*/
|
|
51
|
+
export async function sendViaChat(content, metadata) {
|
|
52
|
+
const { result, orchestrator } = await sendChatMessageToOrchestrator({ content, metadata });
|
|
53
|
+
return {
|
|
54
|
+
conversationId: result.conversation.id ?? null,
|
|
55
|
+
forwarded: orchestrator.forwarded,
|
|
56
|
+
queued: orchestrator.queued === true,
|
|
57
|
+
error: orchestrator.error ?? null,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Real dependencies.
|
|
62
|
+
*
|
|
63
|
+
* @returns Dependencies backed by the backend's services
|
|
64
|
+
*/
|
|
65
|
+
export function createDefaultOnboardingDeps() {
|
|
66
|
+
return {
|
|
67
|
+
store: new OnboardingStateStore(),
|
|
68
|
+
getHarnessState: readOrcHarnessState,
|
|
69
|
+
listTeams: () => StorageService.getInstance().getTeams(),
|
|
70
|
+
saveTeam: (team) => StorageService.getInstance().saveTeam(team),
|
|
71
|
+
templates: () => TemplateService.getInstance(),
|
|
72
|
+
getOrcHarness: () => getHarnessService().orc.get(),
|
|
73
|
+
hasOwnerMessage: () => getChatV2Service().getRecentOwnerMessageContents(0, 1).length > 0,
|
|
74
|
+
getCloudState: () => {
|
|
75
|
+
const cloud = CloudClientService.getInstance();
|
|
76
|
+
const connected = cloud.isConnected();
|
|
77
|
+
return { connected, tier: connected ? cloud.getTier() : null };
|
|
78
|
+
},
|
|
79
|
+
isSlackConnected: () => getSlackService().isConnected(),
|
|
80
|
+
sendToOrchestrator: sendViaChat,
|
|
81
|
+
now: () => new Date(),
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
let instance = null;
|
|
85
|
+
/**
|
|
86
|
+
* The backend's onboarding checklist service.
|
|
87
|
+
*
|
|
88
|
+
* @returns The singleton
|
|
89
|
+
*/
|
|
90
|
+
export function getOnboardingChecklistService() {
|
|
91
|
+
if (!instance)
|
|
92
|
+
instance = new OnboardingChecklistService(createDefaultOnboardingDeps());
|
|
93
|
+
return instance;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Replace or clear the singleton (tests).
|
|
97
|
+
*
|
|
98
|
+
* @param service - Service to use, or null to clear
|
|
99
|
+
*/
|
|
100
|
+
export function setOnboardingChecklistServiceForTesting(service) {
|
|
101
|
+
instance = service;
|
|
102
|
+
}
|
|
103
|
+
//# sourceMappingURL=onboarding-checklist.factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"onboarding-checklist.factory.js","sourceRoot":"","sources":["../../../../../../backend/src/services/onboarding/onboarding-checklist.factory.ts"],"names":[],"mappings":"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"}
|