crewly 1.20.355 → 1.20.356
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 +23 -1
- package/config/skills/team-leader/delegate-task/execute.sh +44 -1
- package/config/skills/team-leader/delegate-task/execute.test.sh +95 -1
- package/dist/backend/backend/src/constants.d.ts +65 -0
- package/dist/backend/backend/src/constants.d.ts.map +1 -1
- package/dist/backend/backend/src/constants.js +65 -0
- package/dist/backend/backend/src/constants.js.map +1 -1
- package/dist/backend/backend/src/controllers/agent-hooks/agent-hooks.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/agent-hooks/agent-hooks.controller.js +10 -0
- package/dist/backend/backend/src/controllers/agent-hooks/agent-hooks.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/orchestrator/orchestrator.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/orchestrator/orchestrator.controller.js +7 -0
- package/dist/backend/backend/src/controllers/orchestrator/orchestrator.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/team/team.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/team/team.controller.js +5 -0
- package/dist/backend/backend/src/controllers/team/team.controller.js.map +1 -1
- package/dist/backend/backend/src/index.d.ts +15 -0
- package/dist/backend/backend/src/index.d.ts.map +1 -1
- package/dist/backend/backend/src/index.js +68 -11
- package/dist/backend/backend/src/index.js.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +11 -0
- package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.js +73 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.d.ts +9 -1
- 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 +60 -4
- package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/resource-mode-protection.d.ts +22 -0
- 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 +33 -0
- package/dist/backend/backend/src/services/agent/resource-mode-protection.js.map +1 -1
- package/dist/backend/backend/src/services/agent/resource-mode.service.d.ts +50 -3
- package/dist/backend/backend/src/services/agent/resource-mode.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/resource-mode.service.js +92 -10
- package/dist/backend/backend/src/services/agent/resource-mode.service.js.map +1 -1
- package/dist/backend/backend/src/services/harness/harness-relogin.service.d.ts +23 -0
- package/dist/backend/backend/src/services/harness/harness-relogin.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/harness/harness-relogin.service.js +47 -6
- package/dist/backend/backend/src/services/harness/harness-relogin.service.js.map +1 -1
- package/dist/backend/backend/src/services/messaging/deferred-start-retry.d.ts +14 -2
- package/dist/backend/backend/src/services/messaging/deferred-start-retry.d.ts.map +1 -1
- package/dist/backend/backend/src/services/messaging/deferred-start-retry.js +21 -4
- package/dist/backend/backend/src/services/messaging/deferred-start-retry.js.map +1 -1
- package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/messaging/queue-processor.service.js +10 -1
- package/dist/backend/backend/src/services/messaging/queue-processor.service.js.map +1 -1
- package/dist/backend/backend/src/services/open-items/open-items.service.d.ts +8 -0
- 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 +33 -0
- 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.js +2 -2
- package/dist/backend/backend/src/services/open-items/open-items.wiring.js.map +1 -1
- package/dist/backend/backend/src/services/open-items/question-card-gate.d.ts +49 -0
- package/dist/backend/backend/src/services/open-items/question-card-gate.d.ts.map +1 -0
- package/dist/backend/backend/src/services/open-items/question-card-gate.js +77 -0
- package/dist/backend/backend/src/services/open-items/question-card-gate.js.map +1 -0
- package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.js +10 -0
- package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.js.map +1 -1
- package/dist/backend/backend/src/services/orchestrator/orchestrator-restart.service.d.ts +2 -0
- package/dist/backend/backend/src/services/orchestrator/orchestrator-restart.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/orchestrator/orchestrator-restart.service.js +17 -0
- package/dist/backend/backend/src/services/orchestrator/orchestrator-restart.service.js.map +1 -1
- package/dist/backend/backend/src/services/orchestrator/orchestrator-status.service.d.ts +7 -0
- package/dist/backend/backend/src/services/orchestrator/orchestrator-status.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/orchestrator/orchestrator-status.service.js +22 -10
- package/dist/backend/backend/src/services/orchestrator/orchestrator-status.service.js.map +1 -1
- package/dist/backend/backend/src/services/runtime-fallback/effective-runtime.d.ts +16 -0
- package/dist/backend/backend/src/services/runtime-fallback/effective-runtime.d.ts.map +1 -1
- package/dist/backend/backend/src/services/runtime-fallback/effective-runtime.js +23 -0
- package/dist/backend/backend/src/services/runtime-fallback/effective-runtime.js.map +1 -1
- package/dist/backend/backend/src/services/runtime-fallback/reset-time.d.ts +2 -1
- package/dist/backend/backend/src/services/runtime-fallback/reset-time.d.ts.map +1 -1
- package/dist/backend/backend/src/services/runtime-fallback/reset-time.js +3 -2
- package/dist/backend/backend/src/services/runtime-fallback/reset-time.js.map +1 -1
- package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.service.d.ts +101 -5
- package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.service.js +247 -19
- package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.service.js.map +1 -1
- package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.wiring.d.ts.map +1 -1
- package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.wiring.js +10 -2
- package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.wiring.js.map +1 -1
- package/dist/backend/backend/src/services/runtime-fallback/usage-limit-rules.d.ts +78 -0
- package/dist/backend/backend/src/services/runtime-fallback/usage-limit-rules.d.ts.map +1 -1
- package/dist/backend/backend/src/services/runtime-fallback/usage-limit-rules.js +159 -1
- package/dist/backend/backend/src/services/runtime-fallback/usage-limit-rules.js.map +1 -1
- package/dist/backend/backend/src/services/runtime-fallback/usage-limit-screen.d.ts +63 -0
- package/dist/backend/backend/src/services/runtime-fallback/usage-limit-screen.d.ts.map +1 -0
- package/dist/backend/backend/src/services/runtime-fallback/usage-limit-screen.js +104 -0
- package/dist/backend/backend/src/services/runtime-fallback/usage-limit-screen.js.map +1 -0
- package/dist/backend/backend/src/services/runtime-fallback/usage-limit-state.d.ts +166 -0
- package/dist/backend/backend/src/services/runtime-fallback/usage-limit-state.d.ts.map +1 -0
- package/dist/backend/backend/src/services/runtime-fallback/usage-limit-state.js +207 -0
- package/dist/backend/backend/src/services/runtime-fallback/usage-limit-state.js.map +1 -0
- package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts.map +1 -1
- package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js +13 -0
- package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js.map +1 -1
- package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts +22 -0
- package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/workflow/scheduler.service.js +35 -1
- package/dist/backend/backend/src/services/workflow/scheduler.service.js.map +1 -1
- package/dist/backend/backend/src/types/index.d.ts +12 -0
- package/dist/backend/backend/src/types/index.d.ts.map +1 -1
- package/dist/backend/backend/src/types/index.js.map +1 -1
- package/dist/backend/backend/src/types/team-template.types.d.ts +1 -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.map +1 -1
- package/dist/backend/build-info.json +2 -2
- package/dist/cli/backend/src/constants.d.ts +65 -0
- package/dist/cli/backend/src/constants.d.ts.map +1 -1
- package/dist/cli/backend/src/constants.js +65 -0
- package/dist/cli/backend/src/constants.js.map +1 -1
- package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts +11 -0
- package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/agent-registration.service.js +73 -1
- package/dist/cli/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.d.ts +9 -1
- 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 +60 -4
- package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/resource-mode.service.d.ts +50 -3
- package/dist/cli/backend/src/services/agent/resource-mode.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/resource-mode.service.js +92 -10
- package/dist/cli/backend/src/services/agent/resource-mode.service.js.map +1 -1
- package/dist/cli/backend/src/services/harness/harness-relogin.service.d.ts +23 -0
- package/dist/cli/backend/src/services/harness/harness-relogin.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/harness/harness-relogin.service.js +47 -6
- package/dist/cli/backend/src/services/harness/harness-relogin.service.js.map +1 -1
- package/dist/cli/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/messaging/queue-processor.service.js +10 -1
- package/dist/cli/backend/src/services/messaging/queue-processor.service.js.map +1 -1
- package/dist/cli/backend/src/services/open-items/open-items.service.d.ts +8 -0
- 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 +33 -0
- package/dist/cli/backend/src/services/open-items/open-items.service.js.map +1 -1
- package/dist/cli/backend/src/services/open-items/question-card-gate.d.ts +49 -0
- package/dist/cli/backend/src/services/open-items/question-card-gate.d.ts.map +1 -0
- package/dist/cli/backend/src/services/open-items/question-card-gate.js +77 -0
- package/dist/cli/backend/src/services/open-items/question-card-gate.js.map +1 -0
- package/dist/cli/backend/src/services/orchestrator/orchestrator-restart.service.d.ts +2 -0
- package/dist/cli/backend/src/services/orchestrator/orchestrator-restart.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/orchestrator/orchestrator-restart.service.js +17 -0
- package/dist/cli/backend/src/services/orchestrator/orchestrator-restart.service.js.map +1 -1
- package/dist/cli/backend/src/services/orchestrator/orchestrator-status.service.d.ts +7 -0
- package/dist/cli/backend/src/services/orchestrator/orchestrator-status.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/orchestrator/orchestrator-status.service.js +22 -10
- package/dist/cli/backend/src/services/orchestrator/orchestrator-status.service.js.map +1 -1
- package/dist/cli/backend/src/services/runtime-fallback/effective-runtime.d.ts +16 -0
- package/dist/cli/backend/src/services/runtime-fallback/effective-runtime.d.ts.map +1 -1
- package/dist/cli/backend/src/services/runtime-fallback/effective-runtime.js +23 -0
- package/dist/cli/backend/src/services/runtime-fallback/effective-runtime.js.map +1 -1
- package/dist/cli/backend/src/services/runtime-fallback/reset-time.d.ts +2 -1
- package/dist/cli/backend/src/services/runtime-fallback/reset-time.d.ts.map +1 -1
- package/dist/cli/backend/src/services/runtime-fallback/reset-time.js +3 -2
- package/dist/cli/backend/src/services/runtime-fallback/reset-time.js.map +1 -1
- package/dist/cli/backend/src/services/runtime-fallback/usage-limit-rules.d.ts +78 -0
- package/dist/cli/backend/src/services/runtime-fallback/usage-limit-rules.d.ts.map +1 -1
- package/dist/cli/backend/src/services/runtime-fallback/usage-limit-rules.js +159 -1
- package/dist/cli/backend/src/services/runtime-fallback/usage-limit-rules.js.map +1 -1
- package/dist/cli/backend/src/services/runtime-fallback/usage-limit-screen.d.ts +63 -0
- package/dist/cli/backend/src/services/runtime-fallback/usage-limit-screen.d.ts.map +1 -0
- package/dist/cli/backend/src/services/runtime-fallback/usage-limit-screen.js +104 -0
- package/dist/cli/backend/src/services/runtime-fallback/usage-limit-screen.js.map +1 -0
- package/dist/cli/backend/src/services/runtime-fallback/usage-limit-state.d.ts +166 -0
- package/dist/cli/backend/src/services/runtime-fallback/usage-limit-state.d.ts.map +1 -0
- package/dist/cli/backend/src/services/runtime-fallback/usage-limit-state.js +207 -0
- package/dist/cli/backend/src/services/runtime-fallback/usage-limit-state.js.map +1 -0
- package/dist/cli/backend/src/types/index.d.ts +12 -0
- package/dist/cli/backend/src/types/index.d.ts.map +1 -1
- package/dist/cli/backend/src/types/index.js.map +1 -1
- package/dist/cli/backend/src/types/team-template.types.d.ts +1 -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.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Whether a question lifted out of an agent's reply earns its own decision
|
|
3
|
+
* card, or is only tracked.
|
|
4
|
+
*
|
|
5
|
+
* The question is already in the agent's message in the owner's thread; a
|
|
6
|
+
* card repeats it with buttons. Over 3.5 days (2026-10-13 → 10-16) the owner
|
|
7
|
+
* got 142 cards, ~40 a day, most of them lifted: cut-off fragments
|
|
8
|
+
* ("md、sending — 可以发吗?"), questions meant for another agent ("你们能在
|
|
9
|
+
* 周五 9 点前回一句结论吗?"), a second card in a thread that already had one,
|
|
10
|
+
* and two cards for one question in the same minute. A card is only worth it
|
|
11
|
+
* when it is a clean question to the owner that he has not been carded on
|
|
12
|
+
* already, and an agent gets only a few a day.
|
|
13
|
+
*
|
|
14
|
+
* Questions that fail the gate stay tracked (the owner answers in the
|
|
15
|
+
* thread, as he does anyway); they just do not get a card.
|
|
16
|
+
*
|
|
17
|
+
* @module services/open-items/question-card-gate
|
|
18
|
+
*/
|
|
19
|
+
import type { OwnerDecision } from '../../types/decision.types.js';
|
|
20
|
+
/** Why a lifted question gets no card. */
|
|
21
|
+
export type CardSkipReason = 'one_card_per_message' | 'fragment' | 'for_someone_else' | 'thread_has_card' | 'same_as_recent' | 'daily_cap';
|
|
22
|
+
/** Input to {@link questionCardSkipReason}. */
|
|
23
|
+
export interface CardGateInput {
|
|
24
|
+
/** The question as extracted from the reply */
|
|
25
|
+
question: string;
|
|
26
|
+
/** The question as the card would show it (may add its subject) */
|
|
27
|
+
cardQuestion?: string;
|
|
28
|
+
/** Asking agent's session */
|
|
29
|
+
agent: string;
|
|
30
|
+
/** Where the card would go (null/undefined: no Slack place) */
|
|
31
|
+
place?: {
|
|
32
|
+
slackChannelId: string;
|
|
33
|
+
threadTs?: string;
|
|
34
|
+
} | null;
|
|
35
|
+
/** Decisions this agent asked in the last day (any kind, any status) */
|
|
36
|
+
recent: readonly OwnerDecision[];
|
|
37
|
+
/** Names of the agent's colleagues (to spot a question addressed to one of them) */
|
|
38
|
+
colleagueNames?: readonly string[];
|
|
39
|
+
/** Now */
|
|
40
|
+
now: Date;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Why this lifted question should not get a card, or null when it should.
|
|
44
|
+
*
|
|
45
|
+
* @param input - The question and what the agent asked recently
|
|
46
|
+
* @returns The reason to skip the card, or null to post it
|
|
47
|
+
*/
|
|
48
|
+
export declare function questionCardSkipReason(input: CardGateInput): CardSkipReason | null;
|
|
49
|
+
//# sourceMappingURL=question-card-gate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"question-card-gate.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/open-items/question-card-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAGnE,0CAA0C;AAC1C,MAAM,MAAM,cAAc,GAAG,sBAAsB,GAAG,UAAU,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,gBAAgB,GAAG,WAAW,CAAC;AAE3I,+CAA+C;AAC/C,MAAM,WAAW,aAAa;IAC5B,+CAA+C;IAC/C,QAAQ,EAAE,MAAM,CAAC;IACjB,mEAAmE;IACnE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6BAA6B;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,+DAA+D;IAC/D,KAAK,CAAC,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC7D,wEAAwE;IACxE,MAAM,EAAE,SAAS,aAAa,EAAE,CAAC;IACjC,oFAAoF;IACpF,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,UAAU;IACV,GAAG,EAAE,IAAI,CAAC;CACX;AAcD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,GAAG,cAAc,GAAG,IAAI,CAuBlF"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Whether a question lifted out of an agent's reply earns its own decision
|
|
3
|
+
* card, or is only tracked.
|
|
4
|
+
*
|
|
5
|
+
* The question is already in the agent's message in the owner's thread; a
|
|
6
|
+
* card repeats it with buttons. Over 3.5 days (2026-10-13 → 10-16) the owner
|
|
7
|
+
* got 142 cards, ~40 a day, most of them lifted: cut-off fragments
|
|
8
|
+
* ("md、sending — 可以发吗?"), questions meant for another agent ("你们能在
|
|
9
|
+
* 周五 9 点前回一句结论吗?"), a second card in a thread that already had one,
|
|
10
|
+
* and two cards for one question in the same minute. A card is only worth it
|
|
11
|
+
* when it is a clean question to the owner that he has not been carded on
|
|
12
|
+
* already, and an agent gets only a few a day.
|
|
13
|
+
*
|
|
14
|
+
* Questions that fail the gate stay tracked (the owner answers in the
|
|
15
|
+
* thread, as he does anyway); they just do not get a card.
|
|
16
|
+
*
|
|
17
|
+
* @module services/open-items/question-card-gate
|
|
18
|
+
*/
|
|
19
|
+
import { OPEN_ITEMS_CONSTANTS } from '../../constants.js';
|
|
20
|
+
import { questionSimilarity } from './open-item-card.js';
|
|
21
|
+
/** Statuses of a card still waiting on the owner. */
|
|
22
|
+
const PENDING = new Set(['open', 'parked']);
|
|
23
|
+
/** A fragment starts mid-sentence: punctuation, or a few latin letters glued to CJK punctuation ("md、…"). */
|
|
24
|
+
const FRAGMENT_START = /^(?:[\p{P}\p{S}]|[a-z0-9]{1,4}[、,,::;;))])/u;
|
|
25
|
+
/** Words that address several people / someone other than the owner. */
|
|
26
|
+
const PLURAL_YOU = /你们|大家|各位|\byou (?:all|guys)\b|\beveryone\b/i;
|
|
27
|
+
/** The owner named in the third person ("和 Steve 定", "ask Steve"). */
|
|
28
|
+
const OWNER_THIRD_PERSON = /(?:和|跟|与|问|找|请|让)\s*(?:Steve|老板|owner)|(?:ask|tell|check with)\s+(?:Steve|the owner)\b/i;
|
|
29
|
+
/**
|
|
30
|
+
* Why this lifted question should not get a card, or null when it should.
|
|
31
|
+
*
|
|
32
|
+
* @param input - The question and what the agent asked recently
|
|
33
|
+
* @returns The reason to skip the card, or null to post it
|
|
34
|
+
*/
|
|
35
|
+
export function questionCardSkipReason(input) {
|
|
36
|
+
const q = input.question.trim();
|
|
37
|
+
if (FRAGMENT_START.test(q))
|
|
38
|
+
return 'fragment';
|
|
39
|
+
if (PLURAL_YOU.test(q) || OWNER_THIRD_PERSON.test(q))
|
|
40
|
+
return 'for_someone_else';
|
|
41
|
+
const head = q.slice(0, 16);
|
|
42
|
+
if ((input.colleagueNames ?? []).some((n) => n && new RegExp(`^@?${escapeRegExp(n)}\\s*[,,::]`, 'i').test(head)))
|
|
43
|
+
return 'for_someone_else';
|
|
44
|
+
const dayAgo = input.now.getTime() - OPEN_ITEMS_CONSTANTS.REPLY_CARD_WINDOW_MS;
|
|
45
|
+
const lifted = input.recent.filter((d) => d.kind === 'reply_question' && d.asker === input.agent && Date.parse(d.createdAt) >= dayAgo);
|
|
46
|
+
const place = input.place;
|
|
47
|
+
if (place && lifted.some((d) => PENDING.has(d.status) && samePlace(d.place, place)))
|
|
48
|
+
return 'thread_has_card';
|
|
49
|
+
const dedupeSince = input.now.getTime() - OPEN_ITEMS_CONSTANTS.ASK_OWNER_DEDUPE_WINDOW_MS;
|
|
50
|
+
if (input.recent.some((d) => Date.parse(d.createdAt) >= dedupeSince &&
|
|
51
|
+
[q, input.cardQuestion].some((t) => !!t && questionSimilarity(d.question, t) >= OPEN_ITEMS_CONSTANTS.SAME_QUESTION_SIMILARITY))) {
|
|
52
|
+
return 'same_as_recent';
|
|
53
|
+
}
|
|
54
|
+
if (lifted.length >= OPEN_ITEMS_CONSTANTS.REPLY_CARDS_PER_AGENT_PER_DAY)
|
|
55
|
+
return 'daily_cap';
|
|
56
|
+
return null;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Same Slack thread (or the same top-level channel when neither has a thread).
|
|
60
|
+
*
|
|
61
|
+
* @param a - A card's place
|
|
62
|
+
* @param b - The new card's place
|
|
63
|
+
* @returns True when they are one conversation
|
|
64
|
+
*/
|
|
65
|
+
function samePlace(a, b) {
|
|
66
|
+
return !!a && a.slackChannelId === b.slackChannelId && (a.threadTs ?? '') === (b.threadTs ?? '');
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Escape a string for use inside a RegExp.
|
|
70
|
+
*
|
|
71
|
+
* @param s - Raw text
|
|
72
|
+
* @returns Escaped text
|
|
73
|
+
*/
|
|
74
|
+
function escapeRegExp(s) {
|
|
75
|
+
return s.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=question-card-gate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"question-card-gate.js","sourceRoot":"","sources":["../../../../../../backend/src/services/open-items/question-card-gate.ts"],"names":[],"mappings":"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"}
|
|
@@ -85,6 +85,8 @@ export declare class OrchestratorRestartService {
|
|
|
85
85
|
private consecutiveFailures;
|
|
86
86
|
/** Set when auto-restart has stopped trying (see {@link markGaveUp}) */
|
|
87
87
|
private gaveUp;
|
|
88
|
+
/** Retry time of the usage-limit state last logged as blocking a restart (log once) */
|
|
89
|
+
private loggedUsageLimitRetryAt;
|
|
88
90
|
/** External dependencies (injected via setDependencies) */
|
|
89
91
|
private agentRegistrationService;
|
|
90
92
|
private sessionBackend;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator-restart.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/orchestrator/orchestrator-restart.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAgBH,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"orchestrator-restart.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/orchestrator/orchestrator-restart.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAgBH,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAM/E,oEAAoE;AACpE,MAAM,WAAW,cAAc;IAC9B;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC5B,sDAAsD;IACtD,aAAa,EAAE,MAAM,CAAC;IACtB,kDAAkD;IAClD,gBAAgB,EAAE,MAAM,CAAC;IACzB,iDAAiD;IACjD,YAAY,EAAE,OAAO,CAAC;IACtB,+CAA+C;IAC/C,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,0DAA0D;IAC1D,cAAc,EAAE,OAAO,CAAC;IACxB,+DAA+D;IAC/D,mBAAmB,EAAE,MAAM,CAAC;IAC5B,0EAA0E;IAC1E,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;CAC7B;AAED,6DAA6D;AAC7D,MAAM,WAAW,aAAa;IAC7B,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,oCAAoC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,oCAAoC;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,wFAAwF;IACxF,OAAO,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,0BAA0B;IACtC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA2C;IAClE,OAAO,CAAC,MAAM,CAAkB;IAEhC,0DAA0D;IAC1D,OAAO,CAAC,iBAAiB,CAAgB;IACzC,iDAAiD;IACjD,OAAO,CAAC,aAAa,CAAK;IAC1B,kDAAkD;IAClD,OAAO,CAAC,YAAY,CAAS;IAC7B,+DAA+D;IAC/D,OAAO,CAAC,mBAAmB,CAAK;IAChC,wEAAwE;IACxE,OAAO,CAAC,MAAM,CAA8B;IAC5C,uFAAuF;IACvF,OAAO,CAAC,uBAAuB,CAAuB;IAEtD,2DAA2D;IAC3D,OAAO,CAAC,wBAAwB,CAAyC;IACzE,OAAO,CAAC,cAAc,CAAgC;IACtD,OAAO,CAAC,QAAQ,CAAiE;IAEjF,OAAO;IAIP;;;;OAIG;IACH,MAAM,CAAC,WAAW,IAAI,0BAA0B;IAOhD;;OAEG;IACH,MAAM,CAAC,aAAa,IAAI,IAAI;IAa5B;;;;;;OAMG;IACH,eAAe,CACd,wBAAwB,EAAE,wBAAwB,EAClD,cAAc,EAAE,eAAe,EAC/B,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;KAAE,GACzD,IAAI;IAMP;;;;OAIG;IACH,gBAAgB,IAAI,OAAO;IAU3B;;;;;;;;;;;;;;;;;;;OAmBG;IACG,cAAc,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAiDpE;;;;;;OAMG;YACW,UAAU;IA+JxB;;;;;;;;OAQG;IACH,OAAO,CAAC,aAAa;IAQrB;;;;;;;;;OASG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAWjF;;;;OAIG;IACH,SAAS,IAAI,aAAa,GAAG,IAAI;IAIjC;;;OAGG;IACH,WAAW,IAAI,IAAI;IAOnB;;;OAGG;YACW,8BAA8B;IAgB5C;;;;OAIG;IACH,eAAe,IAAI,YAAY;IAmB/B;;;OAGG;YACW,WAAW;CAezB"}
|
|
@@ -16,6 +16,7 @@ import { getTerminalGateway } from '../../websocket/terminal.gateway.js';
|
|
|
16
16
|
import { PtyActivityTrackerService } from '../agent/pty-activity-tracker.service.js';
|
|
17
17
|
import { delay } from '../../utils/async.utils.js';
|
|
18
18
|
import { isPlannedRelaunch } from '../agent/planned-relaunch.registry.js';
|
|
19
|
+
import { usageLimitOf } from '../runtime-fallback/usage-limit-state.js';
|
|
19
20
|
/**
|
|
20
21
|
* OrchestratorRestartService manages automatic restart of the orchestrator
|
|
21
22
|
* when the child process (Claude Code) dies inside the PTY shell.
|
|
@@ -49,6 +50,8 @@ export class OrchestratorRestartService {
|
|
|
49
50
|
consecutiveFailures = 0;
|
|
50
51
|
/** Set when auto-restart has stopped trying (see {@link markGaveUp}) */
|
|
51
52
|
gaveUp = null;
|
|
53
|
+
/** Retry time of the usage-limit state last logged as blocking a restart (log once) */
|
|
54
|
+
loggedUsageLimitRetryAt = null;
|
|
52
55
|
/** External dependencies (injected via setDependencies) */
|
|
53
56
|
agentRegistrationService = null;
|
|
54
57
|
sessionBackend = null;
|
|
@@ -135,6 +138,20 @@ export class OrchestratorRestartService {
|
|
|
135
138
|
}
|
|
136
139
|
if (planned)
|
|
137
140
|
return this.runRestart(true, options.reason);
|
|
141
|
+
// Out of usage (e.g. Claude Code's weekly limit): a restart cannot help
|
|
142
|
+
// and only loses the pending turn. Wait for the reset (2026-10-16: 12
|
|
143
|
+
// restarts in 15 minutes on a limited orchestrator).
|
|
144
|
+
const limited = usageLimitOf(ORCHESTRATOR_SESSION_NAME);
|
|
145
|
+
if (limited) {
|
|
146
|
+
if (this.loggedUsageLimitRetryAt !== limited.retryAt) {
|
|
147
|
+
this.loggedUsageLimitRetryAt = limited.retryAt;
|
|
148
|
+
this.logger.warn('Not restarting the orchestrator: its runtime is out of usage', {
|
|
149
|
+
until: limited.until ?? null,
|
|
150
|
+
retryAt: limited.retryAt,
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
return false;
|
|
154
|
+
}
|
|
138
155
|
if (this.gaveUp) {
|
|
139
156
|
if (Date.now() - Date.parse(this.gaveUp.at) < ORCHESTRATOR_RESTART_CONSTANTS.GAVE_UP_RETRY_MS) {
|
|
140
157
|
return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator-restart.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/orchestrator/orchestrator-restart.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"orchestrator-restart.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/orchestrator/orchestrator-restart.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACN,yBAAyB,EACzB,iBAAiB,EACjB,wBAAwB,EACxB,8BAA8B,EAC9B,wBAAwB,EACxB,aAAa,GAEb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAmB,MAAM,2BAA2B,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAGzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AAgDxE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,OAAO,0BAA0B;IAC9B,MAAM,CAAC,QAAQ,GAAsC,IAAI,CAAC;IAC1D,MAAM,CAAkB;IAEhC,0DAA0D;IAClD,iBAAiB,GAAa,EAAE,CAAC;IACzC,iDAAiD;IACzC,aAAa,GAAG,CAAC,CAAC;IAC1B,kDAAkD;IAC1C,YAAY,GAAG,KAAK,CAAC;IAC7B,+DAA+D;IACvD,mBAAmB,GAAG,CAAC,CAAC;IAChC,wEAAwE;IAChE,MAAM,GAAyB,IAAI,CAAC;IAC5C,uFAAuF;IAC/E,uBAAuB,GAAkB,IAAI,CAAC;IAEtD,2DAA2D;IACnD,wBAAwB,GAAoC,IAAI,CAAC;IACjE,cAAc,GAA2B,IAAI,CAAC;IAC9C,QAAQ,GAA4D,IAAI,CAAC;IAEjF;QACC,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,CAAC;IACxF,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,WAAW;QACjB,IAAI,CAAC,0BAA0B,CAAC,QAAQ,EAAE,CAAC;YAC1C,0BAA0B,CAAC,QAAQ,GAAG,IAAI,0BAA0B,EAAE,CAAC;QACxE,CAAC;QACD,OAAO,0BAA0B,CAAC,QAAQ,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,aAAa;QACnB,IAAI,0BAA0B,CAAC,QAAQ,EAAE,CAAC;YACzC,mDAAmD;YACnD,0BAA0B,CAAC,QAAQ,CAAC,wBAAwB,GAAG,IAAI,CAAC;YACpE,0BAA0B,CAAC,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC;YAC1D,0BAA0B,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;YACpD,0BAA0B,CAAC,QAAQ,CAAC,iBAAiB,GAAG,EAAE,CAAC;YAC3D,0BAA0B,CAAC,QAAQ,CAAC,YAAY,GAAG,KAAK,CAAC;YACzD,0BAA0B,CAAC,QAAQ,CAAC,mBAAmB,GAAG,CAAC,CAAC;YAC5D,0BAA0B,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC;QACnD,CAAC;QACD,0BAA0B,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC5C,CAAC;IACD;;;;;;OAMG;IACH,eAAe,CACd,wBAAkD,EAClD,cAA+B,EAC/B,QAA2D;QAE3D,IAAI,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;QACzD,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,QAAQ,IAAI,IAAI,CAAC;IAClC,CAAC;IAED;;;;OAIG;IACH,gBAAgB;QACf,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,WAAW,GAAG,GAAG,GAAG,8BAA8B,CAAC,kBAAkB,CAAC;QAE5E,sCAAsC;QACtC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC;QAEjF,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,8BAA8B,CAAC,uBAAuB,CAAC;IAC/F,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,KAAK,CAAC,cAAc,CAAC,UAA0B,EAAE;QAChD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC;QACzC,IAAI,CAAC,OAAO,IAAI,iBAAiB,CAAC,yBAAyB,CAAC,EAAE,CAAC;YAC9D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAC;YAClG,OAAO,KAAK,CAAC;QACd,CAAC;QACD,IAAI,OAAO;YAAE,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAE1D,wEAAwE;QACxE,sEAAsE;QACtE,qDAAqD;QACrD,MAAM,OAAO,GAAG,YAAY,CAAC,yBAAyB,CAAC,CAAC;QACxD,IAAI,OAAO,EAAE,CAAC;YACb,IAAI,IAAI,CAAC,uBAAuB,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC;gBACtD,IAAI,CAAC,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC;gBAC/C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8DAA8D,EAAE;oBAChF,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI;oBAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;iBACxB,CAAC,CAAC;YACJ,CAAC;YACD,OAAO,KAAK,CAAC;QACd,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,8BAA8B,CAAC,gBAAgB,EAAE,CAAC;gBAC/F,OAAO,KAAK,CAAC;YACd,CAAC;YACD,uEAAuE;YACvE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0DAA0D,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YAC7G,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACnB,IAAI,CAAC,mBAAmB,GAAG,8BAA8B,CAAC,wBAAwB,GAAG,CAAC,CAAC;QACxF,CAAC;QAED,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;YAC1D,OAAO,KAAK,CAAC;QACd,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE;gBACrD,gBAAgB,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM;gBAC/C,UAAU,EAAE,8BAA8B,CAAC,uBAAuB;aAClE,CAAC,CAAC;YACH,OAAO,KAAK,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,UAAU,CAAC,OAAgB,EAAE,MAAe;QACzD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;YAC1D,OAAO,KAAK,CAAC;QACd,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,wBAAwB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;YAC1D,OAAO,KAAK,CAAC;QACd,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAEzB,IAAI,CAAC;YACJ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,2CAA2C,CAAC,CAAC,CAAC,oCAAoC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAEjJ,yCAAyC;YACzC,MAAM,KAAK,CAAC,8BAA8B,CAAC,gBAAgB,CAAC,CAAC;YAE7D,mCAAmC;YACnC,IAAI,CAAC;gBACJ,IAAI,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,yBAAyB,CAAC,EAAE,CAAC;oBAClE,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,yBAAyB,CAAC,CAAC;oBACjE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;gBACrD,CAAC;YACF,CAAC;YAAC,OAAO,OAAO,EAAE,CAAC;gBAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qDAAqD,EAAE;oBACvE,KAAK,EAAE,OAAO,YAAY,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;iBACnE,CAAC,CAAC;YACJ,CAAC;YAED,iEAAiE;YACjE,iEAAiE;YACjE,gEAAgE;YAChE,8CAA8C;YAC9C,yBAAyB,CAAC,WAAW,EAAE,CAAC,YAAY,CAAC,yBAAyB,CAAC,CAAC;YAEhF,mFAAmF;YACnF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,8BAA8B,EAAE,CAAC;YAEhE,2EAA2E;YAC3E,mDAAmD;YACnD,IAAI,wBAA8C,CAAC;YACnD,IAAI,WAAW,KAAK,aAAa,CAAC,UAAU,IAAI,WAAW,KAAK,aAAa,CAAC,eAAe,EAAE,CAAC;gBAC/F,IAAI,CAAC;oBACJ,MAAM,cAAc,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC;oBACpD,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,WAAW,EAAE,CAAC;oBACpD,wBAAwB,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBACjE,IAAI,wBAAwB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACzC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+DAA+D,EAAE;4BACjF,YAAY,EAAE,wBAAwB,CAAC,MAAM;yBAC7C,CAAC,CAAC;oBACJ,CAAC;gBACF,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sEAAsE,EAAE;wBACxF,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC;qBACzB,CAAC,CAAC;gBACJ,CAAC;YACF,CAAC;YAED,mCAAmC;YACnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,kBAAkB,CAAC;gBACrE,WAAW,EAAE,yBAAyB;gBACtC,IAAI,EAAE,iBAAiB;gBACvB,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE;gBAC1B,UAAU,EAAE,wBAAwB;gBACpC,WAAW;gBACX,wBAAwB;aACxB,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACrB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2CAA2C,EAAE;oBAC9D,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,OAAO;iBACP,CAAC,CAAC;gBACH,IAAI,OAAO;oBAAE,OAAO,KAAK,CAAC;gBAC1B,IAAI,CAAC,aAAa,CACjB,MAAM,CAAC,KAAK,IAAI,+CAA+C,EAC/D,MAAM,CAAC,SAAS,KAAK,wBAAwB,CAAC,kBAAkB,CAChE,CAAC;gBACF,OAAO,KAAK,CAAC;YACd,CAAC;YAED,4BAA4B;YAC5B,IAAI,CAAC;gBACJ,MAAM,aAAa,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC;gBAClD,MAAM,aAAa,CAAC,oBAAoB,CACvC,yBAAyB,EACzB,iBAAiB,EACjB,OAAO,CAAC,GAAG,EAAE,CACb,CAAC;YACH,CAAC;YAAC,OAAO,SAAS,EAAE,CAAC;gBACpB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4CAA4C,EAAE;oBAC9D,KAAK,EAAE,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC;iBACzE,CAAC,CAAC;YACJ,CAAC;YAED,gCAAgC;YAChC,IAAI,CAAC;gBACJ,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;gBAC7C,IAAI,eAAe,EAAE,CAAC;oBACrB,eAAe,CAAC,+BAA+B,CAAC,yBAAyB,CAAC,CAAC;gBAC5E,CAAC;YACF,CAAC;YAAC,OAAO,OAAO,EAAE,CAAC;gBAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gDAAgD,EAAE;oBAClE,KAAK,EAAE,OAAO,YAAY,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;iBACnE,CAAC,CAAC;YACJ,CAAC;YAED,IAAI,OAAO,EAAE,CAAC;gBACb,mEAAmE;gBACnE,wDAAwD;gBACxD,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;gBAC7B,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,wBAAwB,EAAE;oBAC7C,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,YAAY,EAAE,IAAI,CAAC,aAAa;oBAChC,OAAO,EAAE,IAAI;oBACb,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC7B,CAAC,CAAC;gBACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;gBAClE,OAAO,IAAI,CAAC;YACb,CAAC;YAED,6CAA6C;YAC7C,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC7B,oCAAoC;YACrC,CAAC,CAAC,CAAC;YAEH,oCAAoC;YACpC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,wBAAwB,EAAE;oBAC5C,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,YAAY,EAAE,IAAI,CAAC,aAAa,GAAG,CAAC;iBACpC,CAAC,CAAC;YACJ,CAAC;YAED,gBAAgB;YAChB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACxC,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;YAE7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE;gBACnD,aAAa,EAAE,IAAI,CAAC,aAAa;aACjC,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC;QACb,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE;gBAChD,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC;gBACzB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;aACvD,CAAC,CAAC;YACH,IAAI,CAAC,OAAO;gBAAE,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;YAC5D,OAAO,KAAK,CAAC;QACd,CAAC;gBAAS,CAAC;YACV,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC3B,CAAC;IACF,CAAC;IAED;;;;;;;;OAQG;IACK,aAAa,CAAC,MAAc,EAAE,OAAgB;QACrD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,OAAO,IAAI,IAAI,CAAC,mBAAmB,IAAI,8BAA8B,CAAC,wBAAwB,EAAE,CAAC;YACpG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;QAC1E,CAAC;IACF,CAAC;IAED;;;;;;;;;OASG;IACH,UAAU,CAAC,MAAc,EAAE,OAA+C;QACzE,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QACxB,IAAI,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;QAC7G,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2FAA2F,EAAE;YAC9G,MAAM;YACN,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;SACxB,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,8BAA8B,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAClE,CAAC;IAED;;;;OAIG;IACH,SAAS;QACR,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IAED;;;OAGG;IACH,WAAW;QACV,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,mBAAmB,KAAK,CAAC;YAAE,OAAO;QAC3D,IAAI,IAAI,CAAC,MAAM;YAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;QAC1F,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,8BAA8B;QAC3C,IAAI,CAAC;YACJ,MAAM,kBAAkB,GAAG,MAAM,cAAc,CAAC,WAAW,EAAE,CAAC,qBAAqB,EAAE,CAAC;YACtF,MAAM,iBAAiB,GAAG,kBAAkB,EAAE,WAAW,CAAC;YAC1D,IAAI,iBAAiB,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,iBAAgC,CAAC,EAAE,CAAC;gBAClG,OAAO,iBAAgC,CAAC;YACzC,CAAC;QACF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,yEAAyE,EAAE;gBAC3F,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC;aACzB,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,aAAa,CAAC,WAAW,CAAC;IAClC,CAAC;IAED;;;;OAIG;IACH,eAAe;QACd,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,WAAW,GAAG,GAAG,GAAG,8BAA8B,CAAC,kBAAkB,CAAC;QAC5E,MAAM,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC,MAAM,CAAC;QAExF,OAAO;YACN,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,gBAAgB;YAChB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,aAAa,EACZ,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC;gBAChC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;gBACnF,CAAC,CAAC,IAAI;YACR,cAAc,EAAE,IAAI,CAAC,gBAAgB,EAAE;YACvC,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;YAC7C,MAAM,EAAE,IAAI,CAAC,MAAM;SACnB,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,WAAW;QACxB,IAAI,CAAC;YACJ,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;YACtE,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;YACvC,MAAM,YAAY,CAAC,gBAAgB,CAAC;gBACnC,KAAK,EAAE,wBAAwB;gBAC/B,OAAO,EAAE,0DAA0D,IAAI,CAAC,aAAa,mDAAmD;gBACxI,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,MAAM;gBACf,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACnC,CAAC,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACR,gEAAgE;QACjE,CAAC;IACF,CAAC"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
*
|
|
8
8
|
* @module services/orchestrator/orchestrator-status.service
|
|
9
9
|
*/
|
|
10
|
+
import { type UsageLimitedView } from '../runtime-fallback/usage-limit-state.js';
|
|
10
11
|
/**
|
|
11
12
|
* Result of an orchestrator status check
|
|
12
13
|
*/
|
|
@@ -17,6 +18,12 @@ export interface OrchestratorStatusResult {
|
|
|
17
18
|
agentStatus: string | null;
|
|
18
19
|
/** Human-readable status message */
|
|
19
20
|
message: string;
|
|
21
|
+
/**
|
|
22
|
+
* Set while the orchestrator's runtime is out of usage (e.g. Claude Code's
|
|
23
|
+
* weekly limit). `isActive` stays true — the session is running and must
|
|
24
|
+
* not be restarted — but it takes no turn before `until` / `retryAt`.
|
|
25
|
+
*/
|
|
26
|
+
usageLimited?: UsageLimitedView;
|
|
20
27
|
}
|
|
21
28
|
/**
|
|
22
29
|
* Check if the orchestrator is currently active and ready to receive messages.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator-status.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/orchestrator/orchestrator-status.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;
|
|
1
|
+
{"version":3,"file":"orchestrator-status.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/orchestrator/orchestrator-status.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAQH,OAAO,EAAoD,KAAK,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAKnI;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,uEAAuE;IACvE,QAAQ,EAAE,OAAO,CAAC;IAClB,mDAAmD;IACnD,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,YAAY,CAAC,EAAE,gBAAgB,CAAC;CACjC;AAqBD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC,CAG7D;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,wBAAwB,CAAC,CA6I/E;AAmCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAqBzE;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,UAAU,UAAO,GAAG,MAAM,CAMvE"}
|
|
@@ -13,8 +13,28 @@ import { getSessionBackendSync } from '../session/index.js';
|
|
|
13
13
|
import { isInProcessRuntimeActive } from '../agent/crewly-agent/in-process-runtime-registry.js';
|
|
14
14
|
import { RUNTIME_TYPES } from '../../constants.js';
|
|
15
15
|
import { effectiveRuntimeType } from '../runtime-fallback/effective-runtime.js';
|
|
16
|
+
import { usageLimitOf, usageLimitReason, usageLimitedView } from '../runtime-fallback/usage-limit-state.js';
|
|
16
17
|
/** Dashboard URL for user-facing messages */
|
|
17
18
|
const DASHBOARD_URL = `http://localhost:${WEB_CONSTANTS.PORTS.FRONTEND}`;
|
|
19
|
+
/**
|
|
20
|
+
* The status of a running orchestrator: "active and ready", unless its
|
|
21
|
+
* runtime is out of usage, in which case it says so and until when.
|
|
22
|
+
*
|
|
23
|
+
* @param sessionName - Orchestrator session
|
|
24
|
+
* @param message - Message for the ready case
|
|
25
|
+
* @returns Active status
|
|
26
|
+
*/
|
|
27
|
+
function activeStatus(sessionName, message) {
|
|
28
|
+
const base = { isActive: true, agentStatus: CREWLY_CONSTANTS.AGENT_STATUSES.ACTIVE };
|
|
29
|
+
const limited = usageLimitOf(sessionName);
|
|
30
|
+
if (!limited)
|
|
31
|
+
return { ...base, message };
|
|
32
|
+
return {
|
|
33
|
+
...base,
|
|
34
|
+
message: `${usageLimitReason('Orchestrator', limited)}. It is not restarted meanwhile; messages wait in the queue.`,
|
|
35
|
+
usageLimited: usageLimitedView(sessionName),
|
|
36
|
+
};
|
|
37
|
+
}
|
|
18
38
|
/**
|
|
19
39
|
* Check if the orchestrator is currently active and ready to receive messages.
|
|
20
40
|
*
|
|
@@ -103,11 +123,7 @@ export async function getOrchestratorStatus() {
|
|
|
103
123
|
// which uses session existence as ground truth for status.
|
|
104
124
|
const isSessionActive = sessionExists && agentStatus === CREWLY_CONSTANTS.AGENT_STATUSES.STARTED;
|
|
105
125
|
if (isRegisteredActive || isSessionActive) {
|
|
106
|
-
return
|
|
107
|
-
isActive: true,
|
|
108
|
-
agentStatus: CREWLY_CONSTANTS.AGENT_STATUSES.ACTIVE,
|
|
109
|
-
message: 'Orchestrator is active and ready.',
|
|
110
|
-
};
|
|
126
|
+
return activeStatus(sessionName, 'Orchestrator is active and ready.');
|
|
111
127
|
}
|
|
112
128
|
// Proactive cleanup: if the session backend confirmed the session is dead
|
|
113
129
|
// but stored status says active, update storage to prevent repeated stale checks
|
|
@@ -154,11 +170,7 @@ export async function getOrchestratorStatus() {
|
|
|
154
170
|
catch {
|
|
155
171
|
// Best-effort — don't let persist failure block recovery
|
|
156
172
|
}
|
|
157
|
-
return
|
|
158
|
-
isActive: true,
|
|
159
|
-
agentStatus: CREWLY_CONSTANTS.AGENT_STATUSES.ACTIVE,
|
|
160
|
-
message: 'Orchestrator is active and ready (status recovered).',
|
|
161
|
-
};
|
|
173
|
+
return activeStatus(sessionName, 'Orchestrator is active and ready (status recovered).');
|
|
162
174
|
}
|
|
163
175
|
}
|
|
164
176
|
// If session exists but status is not active/started, it may be initializing
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator-status.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/orchestrator/orchestrator-status.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,sDAAsD,CAAC;AAChG,OAAO,EAAE,aAAa,EAAoB,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;
|
|
1
|
+
{"version":3,"file":"orchestrator-status.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/orchestrator/orchestrator-status.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,6 +51,8 @@ export interface RuntimeFallbackHooks {
|
|
|
51
51
|
reportOutput(sessionName: string, runtime: string, text: string, source: RuntimeOutputSource): boolean;
|
|
52
52
|
/** One-time note for the session's next kickoff (after a switch), consumed */
|
|
53
53
|
takeKickoffNote(sessionName: string): string | null;
|
|
54
|
+
/** The session's model just answered with a tool call: its runtime target has usage (optional) */
|
|
55
|
+
reportWorking?(sessionName: string): void;
|
|
54
56
|
}
|
|
55
57
|
/**
|
|
56
58
|
* Register (or clear) the hooks.
|
|
@@ -125,4 +127,18 @@ export declare function reportRuntimeOutput(sessionName: string, runtime: string
|
|
|
125
127
|
* @returns The note, once, or null
|
|
126
128
|
*/
|
|
127
129
|
export declare function takeRuntimeSwitchKickoffNote(sessionName: string): string | null;
|
|
130
|
+
/**
|
|
131
|
+
* Report that a session's model just answered (a Claude Code PreToolUse
|
|
132
|
+
* hook: the model produced a tool call, which it cannot do while its account
|
|
133
|
+
* is out of usage). Clears a stale "out of usage" mark on the runtime target
|
|
134
|
+
* the session runs on.
|
|
135
|
+
*
|
|
136
|
+
* @param sessionName - Session the hook came from
|
|
137
|
+
*
|
|
138
|
+
* @example
|
|
139
|
+
* ```ts
|
|
140
|
+
* if (event === 'PreToolUse') reportRuntimeWorking(sessionName);
|
|
141
|
+
* ```
|
|
142
|
+
*/
|
|
143
|
+
export declare function reportRuntimeWorking(sessionName: string | undefined | null): void;
|
|
128
144
|
//# sourceMappingURL=effective-runtime.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"effective-runtime.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/effective-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,4CAA4C;AAC5C,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEhE,iDAAiD;AACjD,MAAM,WAAW,qBAAqB;IACrC,wBAAwB;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,UAAU,EAAE,OAAO,CAAC;IACpB,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,2EAA2E;IAC3E,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,kCAAkC;AAClC,MAAM,WAAW,kBAAkB;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,OAAO,CAAC;CACxB;AAED,iDAAiD;AACjD,MAAM,WAAW,oBAAoB;IACpC,kGAAkG;IAClG,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAChD,qGAAqG;IACrG,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/C,sGAAsG;IACtG,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;IAChD,qFAAqF;IACrF,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACzE,0GAA0G;IAC1G,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IAC1E,0EAA0E;IAC1E,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC;IACvG,8EAA8E;IAC9E,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"effective-runtime.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/effective-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,4CAA4C;AAC5C,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEhE,iDAAiD;AACjD,MAAM,WAAW,qBAAqB;IACrC,wBAAwB;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,UAAU,EAAE,OAAO,CAAC;IACpB,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,2EAA2E;IAC3E,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,kCAAkC;AAClC,MAAM,WAAW,kBAAkB;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,OAAO,CAAC;CACxB;AAED,iDAAiD;AACjD,MAAM,WAAW,oBAAoB;IACpC,kGAAkG;IAClG,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAChD,qGAAqG;IACrG,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/C,sGAAsG;IACtG,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;IAChD,qFAAqF;IACrF,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACzE,0GAA0G;IAC1G,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IAC1E,0EAA0E;IAC1E,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC;IACvG,8EAA8E;IAC9E,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACpD,kGAAkG;IAClG,aAAa,CAAC,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1C;AAID;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,oBAAoB,GAAG,IAAI,GAAG,IAAI,CAE/E;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC,CAO/G;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAO5F;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAOxF;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAOpG;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAOvG;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAO5H;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAO/E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,CAOjF"}
|
|
@@ -152,4 +152,27 @@ export function takeRuntimeSwitchKickoffNote(sessionName) {
|
|
|
152
152
|
return null;
|
|
153
153
|
}
|
|
154
154
|
}
|
|
155
|
+
/**
|
|
156
|
+
* Report that a session's model just answered (a Claude Code PreToolUse
|
|
157
|
+
* hook: the model produced a tool call, which it cannot do while its account
|
|
158
|
+
* is out of usage). Clears a stale "out of usage" mark on the runtime target
|
|
159
|
+
* the session runs on.
|
|
160
|
+
*
|
|
161
|
+
* @param sessionName - Session the hook came from
|
|
162
|
+
*
|
|
163
|
+
* @example
|
|
164
|
+
* ```ts
|
|
165
|
+
* if (event === 'PreToolUse') reportRuntimeWorking(sessionName);
|
|
166
|
+
* ```
|
|
167
|
+
*/
|
|
168
|
+
export function reportRuntimeWorking(sessionName) {
|
|
169
|
+
if (!hooks?.reportWorking || !sessionName)
|
|
170
|
+
return;
|
|
171
|
+
try {
|
|
172
|
+
hooks.reportWorking(sessionName);
|
|
173
|
+
}
|
|
174
|
+
catch {
|
|
175
|
+
// never breaks the caller
|
|
176
|
+
}
|
|
177
|
+
}
|
|
155
178
|
//# sourceMappingURL=effective-runtime.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"effective-runtime.js","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/effective-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"effective-runtime.js","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/effective-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA+CH,IAAI,KAAK,GAAgC,IAAI,CAAC;AAE9C;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAiC;IACxE,KAAK,GAAG,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAAmB,WAAsC,EAAE,UAAa;IAC3G,IAAI,CAAC,KAAK,IAAI,CAAC,WAAW;QAAE,OAAO,UAAU,CAAC;IAC9C,IAAI,CAAC;QACJ,OAAQ,KAAK,CAAC,WAAW,CAAC,WAAW,CAAc,IAAI,UAAU,CAAC;IACnE,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,UAAU,CAAC;IACnB,CAAC;AACF,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,sBAAsB,CAAC,WAAsC;IAC5E,IAAI,CAAC,KAAK,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IACxC,IAAI,CAAC;QACJ,OAAO,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,wBAAwB,CAAC,WAAsC;IAC9E,IAAI,CAAC,KAAK,IAAI,CAAC,WAAW;QAAE,OAAO,KAAK,CAAC;IACzC,IAAI,CAAC;QACJ,OAAO,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,KAAK,CAAC;IACd,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,KAAyB;IACnE,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IACpE,IAAI,CAAC;QACJ,OAAO,MAAM,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IACzD,CAAC;AACF,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,6BAA6B,CAAC,WAAmB,EAAE,OAAe;IACjF,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,IAAI,CAAC;QACJ,OAAO,KAAK,CAAC,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,SAAS,CAAC;IAClB,CAAC;AACF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,WAAmB,EAAE,OAAe,EAAE,IAAY,EAAE,MAA2B;IAClH,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IAClC,IAAI,CAAC;QACJ,OAAO,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,KAAK,CAAC;IACd,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,4BAA4B,CAAC,WAAmB;IAC/D,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,IAAI,CAAC;QACJ,OAAO,KAAK,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,oBAAoB,CAAC,WAAsC;IAC1E,IAAI,CAAC,KAAK,EAAE,aAAa,IAAI,CAAC,WAAW;QAAE,OAAO;IAClD,IAAI,CAAC;QACJ,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACR,0BAA0B;IAC3B,CAAC;AACF,CAAC"}
|
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
*
|
|
6
6
|
* - Claude Code: `You've hit your limit · resets 3pm (America/Los_Angeles)`,
|
|
7
7
|
* `resets Oct 6, 9am`, `Your limit will reset at 5pm (Asia/Shanghai).`,
|
|
8
|
-
* `continuing automatically at 3pm`, the
|
|
8
|
+
* `continuing automatically at 3pm`, the limit menu's `Wait here, then
|
|
9
|
+
* continue automatically at 8pm`, the old `usage limit reached|1767225600`
|
|
9
10
|
* (epoch seconds) and the API's `resets 2026-08-08 00:00 UTC`.
|
|
10
11
|
* - Codex: `try again at 4:05 PM`, `try again at Oct 3rd, 2026 4:05 PM`,
|
|
11
12
|
* `try again in 4 days 7 hours 3 minutes`.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reset-time.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/reset-time.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"reset-time.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/reset-time.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAUH,uCAAuC;AACvC,UAAU,SAAS;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CACf;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,EAAE,IAAI,MAAM,CAQ3E;AA0BD;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAUpF;AAsCD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAcjE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAqDjG"}
|
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
*
|
|
6
6
|
* - Claude Code: `You've hit your limit · resets 3pm (America/Los_Angeles)`,
|
|
7
7
|
* `resets Oct 6, 9am`, `Your limit will reset at 5pm (Asia/Shanghai).`,
|
|
8
|
-
* `continuing automatically at 3pm`, the
|
|
8
|
+
* `continuing automatically at 3pm`, the limit menu's `Wait here, then
|
|
9
|
+
* continue automatically at 8pm`, the old `usage limit reached|1767225600`
|
|
9
10
|
* (epoch seconds) and the API's `resets 2026-08-08 00:00 UTC`.
|
|
10
11
|
* - Codex: `try again at 4:05 PM`, `try again at Oct 3rd, 2026 4:05 PM`,
|
|
11
12
|
* `try again in 4 days 7 hours 3 minutes`.
|
|
@@ -107,7 +108,7 @@ const DATE = String.raw `(?:(?:on\s+)?([A-Za-z]{3,9})\.?\s+(\d{1,2})(?:st|nd|rd|
|
|
|
107
108
|
/** A trailing time zone: `(America/Los_Angeles)`, `(UTC)`, ` UTC`. */
|
|
108
109
|
const ZONE = String.raw `(?:\s*\(([A-Za-z_]+(?:\/[A-Za-z0-9_+\-]+)*)\)|\s+(UTC|GMT)\b)?`;
|
|
109
110
|
/** What introduces an absolute reset time. */
|
|
110
|
-
const ABSOLUTE_LEAD = String.raw `(?:resets?|reset\s+at|resets?\s+at|try\s+again\s+(?:at|after)|available\s+again\s+at|
|
|
111
|
+
const ABSOLUTE_LEAD = String.raw `(?:resets?|reset\s+at|resets?\s+at|try\s+again\s+(?:at|after)|available\s+again\s+at|continu(?:e|ing)\s+automatically(?:\s+at)?|until)`;
|
|
111
112
|
/** Absolute: lead + optional date + clock + optional zone. */
|
|
112
113
|
const ABSOLUTE_RE = new RegExp(String.raw `${ABSOLUTE_LEAD}\s+(?:at\s+)?${DATE}${CLOCK}${ZONE}`, 'i');
|
|
113
114
|
/** ISO-ish: `resets 2026-08-08 00:00 UTC`. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reset-time.js","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/reset-time.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"reset-time.js","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/reset-time.ts"],"names":[],"mappings":"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"}
|
|
@@ -110,4 +110,82 @@ export declare function getUsageLimitRules(runtime: string): readonly UsageLimit
|
|
|
110
110
|
* ```
|
|
111
111
|
*/
|
|
112
112
|
export declare function detectUsageLimit(output: string, runtime: string, now?: number, defaultTimeZone?: string): UsageLimitMatch | null;
|
|
113
|
+
/**
|
|
114
|
+
* Claude Code's usage-limit menu, shown when a turn hits the limit:
|
|
115
|
+
*
|
|
116
|
+
* ```
|
|
117
|
+
* ⎿ You've hit your weekly limit · resets Oct 16 at 8pm (America/New_York)
|
|
118
|
+
* What do you want to do?
|
|
119
|
+
* ❯ 1. Stop and wait for limit to reset
|
|
120
|
+
* 2. Wait here, then continue automatically at 8pm
|
|
121
|
+
* Enter to confirm · Esc to cancel
|
|
122
|
+
* ```
|
|
123
|
+
*
|
|
124
|
+
* Both options must be on screen. Matched against the spaceless screen tail.
|
|
125
|
+
*/
|
|
126
|
+
export declare const CLAUDE_USAGE_LIMIT_MENU: readonly RegExp[];
|
|
127
|
+
/** What {@link detectUsageLimitScreen} found. */
|
|
128
|
+
export interface UsageLimitScreenMatch {
|
|
129
|
+
/** Runtime the match belongs to */
|
|
130
|
+
runtime: string;
|
|
131
|
+
/** Rule that matched the limit line, or `claude.usage_limit_menu` */
|
|
132
|
+
ruleId: string;
|
|
133
|
+
/** When the limit lifts (epoch ms), when the screen says so and it is plausible */
|
|
134
|
+
resetAt: number | null;
|
|
135
|
+
/** Set while the usage-limit menu is open; `selected` is the highlighted option */
|
|
136
|
+
menu: {
|
|
137
|
+
selected: 1 | 2 | null;
|
|
138
|
+
} | null;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Find a usage-limit state on a captured screen — what the agent shows right
|
|
142
|
+
* now — as opposed to {@link detectUsageLimit}, which reads live output and
|
|
143
|
+
* error text.
|
|
144
|
+
*
|
|
145
|
+
* Only the bottom of the screen counts (old scrollback and resumed
|
|
146
|
+
* transcripts sit above it):
|
|
147
|
+
*
|
|
148
|
+
* - Claude Code's usage-limit menu ({@link CLAUDE_USAGE_LIMIT_MENU}) is a
|
|
149
|
+
* modal waiting for an answer, so it always counts; the reset time comes
|
|
150
|
+
* from the limit line above it or from option 2 ("continue automatically
|
|
151
|
+
* at 8pm").
|
|
152
|
+
* - A plain limit line ("You've hit your … limit · resets …") counts only
|
|
153
|
+
* when its reset names a calendar date and is plausible
|
|
154
|
+
* ({@link plausibleReset}), so an old line that names a past date is not
|
|
155
|
+
* read as a new limit. A line whose reset has no date ("resets 8pm",
|
|
156
|
+
* "try again in 2h") never counts here: on a resumed conversation it may
|
|
157
|
+
* be old. Only new live output may report it.
|
|
158
|
+
*
|
|
159
|
+
* Transient rate limits and expired logins are never reported.
|
|
160
|
+
*
|
|
161
|
+
* @param screen - Captured screen text (escape sequences allowed)
|
|
162
|
+
* @param runtime - Runtime the session runs
|
|
163
|
+
* @param now - Current time (ms)
|
|
164
|
+
* @param defaultTimeZone - Zone for reset clock times that name none
|
|
165
|
+
* @returns The match, or null
|
|
166
|
+
*
|
|
167
|
+
* @example
|
|
168
|
+
* ```ts
|
|
169
|
+
* detectUsageLimitScreen(screen, 'claude-code');
|
|
170
|
+
* // { runtime: 'claude-code', ruleId: 'claude.hit_your_limit', resetAt: <Oct 16 8pm New York>, menu: { selected: 1 } }
|
|
171
|
+
* ```
|
|
172
|
+
*/
|
|
173
|
+
export declare function detectUsageLimitScreen(screen: string, runtime: string, now?: number, defaultTimeZone?: string): UsageLimitScreenMatch | null;
|
|
174
|
+
/**
|
|
175
|
+
* Whether a live output chunk is fresh activity that is not a usage-limit
|
|
176
|
+
* message: at least {@link USAGE_LIMIT_STATE_CONSTANTS.FRESH_OUTPUT_MIN_CHARS}
|
|
177
|
+
* printable characters, no usage-limit match, and none of the words of the
|
|
178
|
+
* limit screen. Used to lift a usage-limit state once the agent works again.
|
|
179
|
+
*
|
|
180
|
+
* @param output - Output chunk (escape sequences allowed)
|
|
181
|
+
* @param runtime - Runtime the session runs
|
|
182
|
+
* @param now - Current time (ms)
|
|
183
|
+
* @returns True for fresh non-limit output
|
|
184
|
+
*
|
|
185
|
+
* @example
|
|
186
|
+
* ```ts
|
|
187
|
+
* isFreshNonLimitOutput('⏺ Read(src/app.ts) … 120 lines, editing the handler now', 'claude-code'); // true
|
|
188
|
+
* ```
|
|
189
|
+
*/
|
|
190
|
+
export declare function isFreshNonLimitOutput(output: string, runtime: string, now?: number): boolean;
|
|
113
191
|
//# sourceMappingURL=usage-limit-rules.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usage-limit-rules.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/usage-limit-rules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAOH;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG,aAAa,GAAG,SAAS,GAAG,WAAW,CAAC;AAErE;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAE9D;AAED,uEAAuE;AACvE,MAAM,WAAW,cAAc;IAC9B,sDAAsD;IACtD,EAAE,EAAE,MAAM,CAAC;IACX,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,cAAc,CAAC;IACrB,+DAA+D;IAC/D,GAAG,EAAE,SAAS,MAAM,EAAE,CAAC;IACvB,qEAAqE;IACrE,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACzB;AAED,2CAA2C;AAC3C,MAAM,WAAW,eAAe;IAC/B,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,cAAc,CAAC;IACrB,gEAAgE;IAChE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AASD,8DAA8D;AAC9D,eAAO,MAAM,kBAAkB,EAAE,SAAS,cAAc,EAuDvD,CAAC;AAEF,mBAAmB;AACnB,eAAO,MAAM,iBAAiB,EAAE,SAAS,cAAc,EAmBtD,CAAC;AAoBF,6BAA6B;AAC7B,eAAO,MAAM,uBAAuB,EAAE,SAAS,cAAc,EAA8D,CAAC;AAE5H,uDAAuD;AACvD,eAAO,MAAM,kBAAkB,EAAE,SAAS,cAAc,EAAoD,CAAC;AAE7G;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,SAAS,cAAc,EAyB7D,CAAC;AAWF;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,cAAc,EAAE,CAE7E;AAcD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,GAAE,MAAmB,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAoB5I"}
|
|
1
|
+
{"version":3,"file":"usage-limit-rules.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/usage-limit-rules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAOH;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG,aAAa,GAAG,SAAS,GAAG,WAAW,CAAC;AAErE;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAE9D;AAED,uEAAuE;AACvE,MAAM,WAAW,cAAc;IAC9B,sDAAsD;IACtD,EAAE,EAAE,MAAM,CAAC;IACX,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,cAAc,CAAC;IACrB,+DAA+D;IAC/D,GAAG,EAAE,SAAS,MAAM,EAAE,CAAC;IACvB,qEAAqE;IACrE,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACzB;AAED,2CAA2C;AAC3C,MAAM,WAAW,eAAe;IAC/B,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,cAAc,CAAC;IACrB,gEAAgE;IAChE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AASD,8DAA8D;AAC9D,eAAO,MAAM,kBAAkB,EAAE,SAAS,cAAc,EAuDvD,CAAC;AAEF,mBAAmB;AACnB,eAAO,MAAM,iBAAiB,EAAE,SAAS,cAAc,EAmBtD,CAAC;AAoBF,6BAA6B;AAC7B,eAAO,MAAM,uBAAuB,EAAE,SAAS,cAAc,EAA8D,CAAC;AAE5H,uDAAuD;AACvD,eAAO,MAAM,kBAAkB,EAAE,SAAS,cAAc,EAAoD,CAAC;AAE7G;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,SAAS,cAAc,EAyB7D,CAAC;AAWF;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,cAAc,EAAE,CAE7E;AAcD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,GAAE,MAAmB,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAoB5I;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,uBAAuB,EAAE,SAAS,MAAM,EAGpD,CAAC;AAQF,iDAAiD;AACjD,MAAM,WAAW,qBAAqB;IACrC,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,MAAM,EAAE,MAAM,CAAC;IACf,mFAAmF;IACnF,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,mFAAmF;IACnF,IAAI,EAAE;QAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;CACxC;AA6BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,sBAAsB,CACrC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,GAAG,GAAE,MAAmB,EACxB,eAAe,CAAC,EAAE,MAAM,GACtB,qBAAqB,GAAG,IAAI,CAgC9B;AAsBD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,GAAE,MAAmB,GAAG,OAAO,CAMxG"}
|