charness 3.8.0 → 3.9.1
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/CHANGELOG.md +12 -0
- package/DEVELOPMENT.md +3 -1
- package/SETUP.md +4 -3
- package/dist/cli.d.ts +2 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +12 -5
- package/dist/cli.js.map +1 -1
- package/dist/connectors/jira/inbound.d.ts +25 -1
- package/dist/connectors/jira/inbound.d.ts.map +1 -1
- package/dist/connectors/jira/inbound.js +74 -2
- package/dist/connectors/jira/inbound.js.map +1 -1
- package/dist/connectors/jira/issueContext.d.ts +11 -2
- package/dist/connectors/jira/issueContext.d.ts.map +1 -1
- package/dist/connectors/jira/issueContext.js +22 -2
- package/dist/connectors/jira/issueContext.js.map +1 -1
- package/dist/connectors/jira/prompt.d.ts +12 -2
- package/dist/connectors/jira/prompt.d.ts.map +1 -1
- package/dist/connectors/jira/prompt.js +59 -5
- package/dist/connectors/jira/prompt.js.map +1 -1
- package/dist/connectors/telegram/commands/runners.d.ts.map +1 -1
- package/dist/connectors/telegram/commands/runners.js +64 -26
- package/dist/connectors/telegram/commands/runners.js.map +1 -1
- package/dist/connectors/telegram/runnerPairingMessages.d.ts +7 -5
- package/dist/connectors/telegram/runnerPairingMessages.d.ts.map +1 -1
- package/dist/connectors/telegram/runnerPairingMessages.js +17 -10
- package/dist/connectors/telegram/runnerPairingMessages.js.map +1 -1
- package/dist/i18n/de.d.ts.map +1 -1
- package/dist/i18n/de.js +6 -4
- package/dist/i18n/de.js.map +1 -1
- package/dist/i18n/en.d.ts.map +1 -1
- package/dist/i18n/en.js +6 -4
- package/dist/i18n/en.js.map +1 -1
- package/dist/i18n/es.d.ts.map +1 -1
- package/dist/i18n/es.js +6 -4
- package/dist/i18n/es.js.map +1 -1
- package/dist/i18n/fr.d.ts.map +1 -1
- package/dist/i18n/fr.js +6 -4
- package/dist/i18n/fr.js.map +1 -1
- package/dist/i18n/hi.d.ts.map +1 -1
- package/dist/i18n/hi.js +6 -4
- package/dist/i18n/hi.js.map +1 -1
- package/dist/i18n/ja.d.ts.map +1 -1
- package/dist/i18n/ja.js +6 -4
- package/dist/i18n/ja.js.map +1 -1
- package/dist/i18n/ka.d.ts.map +1 -1
- package/dist/i18n/ka.js +6 -4
- package/dist/i18n/ka.js.map +1 -1
- package/dist/i18n/pt.d.ts.map +1 -1
- package/dist/i18n/pt.js +6 -4
- package/dist/i18n/pt.js.map +1 -1
- package/dist/i18n/ru.d.ts.map +1 -1
- package/dist/i18n/ru.js +6 -4
- package/dist/i18n/ru.js.map +1 -1
- package/dist/i18n/uk.d.ts.map +1 -1
- package/dist/i18n/uk.js +6 -4
- package/dist/i18n/uk.js.map +1 -1
- package/dist/i18n/uz.d.ts.map +1 -1
- package/dist/i18n/uz.js +6 -4
- package/dist/i18n/uz.js.map +1 -1
- package/dist/i18n/zh.d.ts.map +1 -1
- package/dist/i18n/zh.js +6 -4
- package/dist/i18n/zh.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/remoteRun/pairedRunners.js +1 -1
- package/dist/remoteRun/pairedRunners.js.map +1 -1
- package/dist/remoteRun/runnerSummary.js +1 -1
- package/dist/remoteRun/runnerSummary.js.map +1 -1
- package/dist/remoteRun/runners.d.ts +8 -1
- package/dist/remoteRun/runners.d.ts.map +1 -1
- package/dist/remoteRun/runners.js +14 -2
- package/dist/remoteRun/runners.js.map +1 -1
- package/dist/remoteRun/runnersConfig.d.ts +2 -0
- package/dist/remoteRun/runnersConfig.d.ts.map +1 -1
- package/dist/remoteRun/runnersConfig.js.map +1 -1
- package/dist/requests/requestHeader.d.ts +2 -1
- package/dist/requests/requestHeader.d.ts.map +1 -1
- package/dist/requests/requestHeader.js +6 -2
- package/dist/requests/requestHeader.js.map +1 -1
- package/dist/requests/storedPromptRefresh.d.ts +16 -0
- package/dist/requests/storedPromptRefresh.d.ts.map +1 -0
- package/dist/requests/storedPromptRefresh.js +36 -0
- package/dist/requests/storedPromptRefresh.js.map +1 -0
- package/dist/runnerUtility/adminCheck.d.ts +7 -0
- package/dist/runnerUtility/adminCheck.d.ts.map +1 -1
- package/dist/runnerUtility/adminCheck.js +5 -4
- package/dist/runnerUtility/adminCheck.js.map +1 -1
- package/dist/runnerUtility/adminService.d.ts +22 -0
- package/dist/runnerUtility/adminService.d.ts.map +1 -0
- package/dist/runnerUtility/adminService.js +145 -0
- package/dist/runnerUtility/adminService.js.map +1 -0
- package/dist/runnerUtility/hubClient.d.ts +2 -2
- package/dist/runnerUtility/hubClient.d.ts.map +1 -1
- package/dist/runnerUtility/hubClient.js +1 -1
- package/dist/runnerUtility/hubClient.js.map +1 -1
- package/dist/runnerUtility/linkLoop.d.ts +0 -8
- package/dist/runnerUtility/linkLoop.d.ts.map +1 -1
- package/dist/runnerUtility/linkLoop.js +3 -10
- package/dist/runnerUtility/linkLoop.js.map +1 -1
- package/dist/runnerUtility/pairArgs.d.ts +16 -0
- package/dist/runnerUtility/pairArgs.d.ts.map +1 -0
- package/dist/runnerUtility/pairArgs.js +17 -0
- package/dist/runnerUtility/pairArgs.js.map +1 -0
- package/dist/runnerUtility/rootServiceCli.d.ts +8 -0
- package/dist/runnerUtility/rootServiceCli.d.ts.map +1 -0
- package/dist/runnerUtility/rootServiceCli.js +31 -0
- package/dist/runnerUtility/rootServiceCli.js.map +1 -0
- package/dist/runnerUtility/runnerCli.js +29 -23
- package/dist/runnerUtility/runnerCli.js.map +1 -1
- package/dist/runnerUtility/runnerCommands.d.ts +13 -4
- package/dist/runnerUtility/runnerCommands.d.ts.map +1 -1
- package/dist/runnerUtility/runnerCommands.js +58 -12
- package/dist/runnerUtility/runnerCommands.js.map +1 -1
- package/dist/runnerUtility/serviceCommon.d.ts +97 -0
- package/dist/runnerUtility/serviceCommon.d.ts.map +1 -0
- package/dist/runnerUtility/serviceCommon.js +209 -0
- package/dist/runnerUtility/serviceCommon.js.map +1 -0
- package/dist/runnerUtility/serviceManager.d.ts +14 -17
- package/dist/runnerUtility/serviceManager.d.ts.map +1 -1
- package/dist/runnerUtility/serviceManager.js +132 -201
- package/dist/runnerUtility/serviceManager.js.map +1 -1
- package/dist/runnerUtility/serviceUnits.d.ts +3 -1
- package/dist/runnerUtility/serviceUnits.d.ts.map +1 -1
- package/dist/runnerUtility/serviceUnits.js +26 -6
- package/dist/runnerUtility/serviceUnits.js.map +1 -1
- package/dist/runners/bootstrapLine.d.ts +10 -1
- package/dist/runners/bootstrapLine.d.ts.map +1 -1
- package/dist/runners/bootstrapLine.js +102 -17
- package/dist/runners/bootstrapLine.js.map +1 -1
- package/dist/runners/gate.d.ts.map +1 -1
- package/dist/runners/gate.js +9 -0
- package/dist/runners/gate.js.map +1 -1
- package/dist/runners/gateProtocol.d.ts +7 -1
- package/dist/runners/gateProtocol.d.ts.map +1 -1
- package/dist/runners/gateProtocol.js +5 -3
- package/dist/runners/gateProtocol.js.map +1 -1
- package/dist/runners/hubPairing.d.ts +7 -0
- package/dist/runners/hubPairing.d.ts.map +1 -1
- package/dist/runners/hubPairing.js +16 -0
- package/dist/runners/hubPairing.js.map +1 -1
- package/dist/runners/hubPaths.d.ts +4 -0
- package/dist/runners/hubPaths.d.ts.map +1 -1
- package/dist/runners/hubPaths.js +2 -0
- package/dist/runners/hubPaths.js.map +1 -1
- package/dist/runners/hubRegistry.d.ts +23 -1
- package/dist/runners/hubRegistry.d.ts.map +1 -1
- package/dist/runners/hubRegistry.js +48 -2
- package/dist/runners/hubRegistry.js.map +1 -1
- package/dist/runners/linkControl.d.ts +12 -1
- package/dist/runners/linkControl.d.ts.map +1 -1
- package/dist/runners/linkControl.js +56 -9
- package/dist/runners/linkControl.js.map +1 -1
- package/dist/runners/removalTiming.d.ts +13 -0
- package/dist/runners/removalTiming.d.ts.map +1 -0
- package/dist/runners/removalTiming.js +17 -0
- package/dist/runners/removalTiming.js.map +1 -0
- package/dist/runners/runnerRemoval.d.ts.map +1 -1
- package/dist/runners/runnerRemoval.js +12 -0
- package/dist/runners/runnerRemoval.js.map +1 -1
- package/dist/runners/runnerServiceKind.d.ts +10 -0
- package/dist/runners/runnerServiceKind.d.ts.map +1 -0
- package/dist/runners/runnerServiceKind.js +13 -0
- package/dist/runners/runnerServiceKind.js.map +1 -0
- package/dist/runners/runnersCli.d.ts +11 -2
- package/dist/runners/runnersCli.d.ts.map +1 -1
- package/dist/runners/runnersCli.js +39 -14
- package/dist/runners/runnersCli.js.map +1 -1
- package/dist/runners/runnersList.d.ts +6 -9
- package/dist/runners/runnersList.d.ts.map +1 -1
- package/dist/runners/runnersList.js +9 -7
- package/dist/runners/runnersList.js.map +1 -1
- package/dist/runners/runnersOverview.d.ts.map +1 -1
- package/dist/runners/runnersOverview.js +2 -1
- package/dist/runners/runnersOverview.js.map +1 -1
- package/dist/selfUpdate/selfCheck.d.ts +13 -0
- package/dist/selfUpdate/selfCheck.d.ts.map +1 -1
- package/dist/selfUpdate/selfCheck.js +9 -3
- package/dist/selfUpdate/selfCheck.js.map +1 -1
- package/dist/stt/sttInstallEntry.js +7 -4
- package/dist/stt/sttInstallEntry.js.map +1 -1
- package/dist/utils/runnersScreenPlan.d.ts +18 -7
- package/dist/utils/runnersScreenPlan.d.ts.map +1 -1
- package/dist/utils/runnersScreenPlan.js +22 -7
- package/dist/utils/runnersScreenPlan.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
## Unreleased
|
|
4
4
|
|
|
5
|
+
## 3.9.1 — 2026-11-04
|
|
6
|
+
|
|
7
|
+
**An @-mention of the AI account in a Jira issue it is already working on no longer makes it believe the issue is not handed to it, and no longer stops its build.**
|
|
8
|
+
Before, the prompt for every @-mention said «The issue is not handed to you (assignee: nobody, …) — answer only, change nothing», because the bot never read the issue's assignee for that prompt. On an issue assigned to the AI account in a work status, with its hand-over request still open, a mention by another trusted person landed in the same session: the agent took the note for the state of the issue, dropped its build, and the bot's normal hand-back then reassigned the issue to the requester.
|
|
9
|
+
Now the assignee is read, and the note tells the cases apart. An issue assigned to the AI account in one of the project's trigger statuses with a hand-over request open is «handed to you»: the read-only limit applies only to that one answer, the open request is named and goes on unchanged, and a request for work in the comment is not taken on — a change has to come from that hand-over's requester or a new hand-over. The note is checked again right before it reaches the agent — also when the prompt waited behind a running turn or a usage limit, or is resent — and drops a hand-over that got its final answer meanwhile; it says the request was open when the comment came in, so a finished one is never resumed. With no hand-over request open, the same issue gets the answer-only note. An issue held by someone else, or assigned to the AI account in a status it does not work in, still gets the answer-only note, now naming the real assignee — and, while a hand-over request is open, saying that the request is not affected.
|
|
10
|
+
|
|
11
|
+
## 3.9.0 — 2026-11-03
|
|
12
|
+
|
|
13
|
+
**Pairing a runner from an admin account is now one paste: the pairing offers a `sudo` line that checks the account, pairs it and keeps it running — the line for the runner account itself stays as the second option.**
|
|
14
|
+
Before, the one-time line had to be pasted into the terminal of the account that will run the jobs — awkward when you are logged in as an admin and that account is one you never log in to — and the commands to keep it running came afterwards.
|
|
15
|
+
Now `/runners` → **+ Pair a new runner** (and `charness runners pair`, with `--account <name>`) offers two lines for one code, in two messages: first `sudo sh -c '…' sh runner`, to run from an admin account of the runner machine, then the plain line for the runner account. The admin line checks the account named by its last word — `runner` unless you change it: it must exist, and it is refused if it is root or an admin (or if its groups cannot be read), because it runs the agents' code; nothing ever creates an account — pairs the machine **as that account** (its files are its own, not root's), and then installs its always-on service: on a Mac the LaunchDaemon that runs as the account, on Linux its systemd user service with lingering switched on. The account runs the agents' code, so root never runs, reads through or writes into anything that account can change: the line downloads the package into a folder of its own, has the account pair itself from it, and runs the service step from the same copy — the account's own side is done by the account's program through `sudo -u`. Pasting the admin line runs code from this charness host as root on that machine (the Telegram message and the CLI's text say so); the plain line trusts the host only with the runner account. A Mac's daemons write their logs as the account, never through a folder root opens. Both messages turn into «paired» or «expired» together; a service step that fails leaves the account paired and says to paste a fresh admin line, which finds the account paired, closes its own code on the charness host and only installs the service (its Telegram messages then say the line was used on a machine that was already paired, and `charness runners pair --wait` exits 0). For the same reason `service install --system` on the runner is gone (an always-on service is installed by the admin line, and removed by the plain `launchctl` commands that `charness-runner service uninstall` prints).
|
|
16
|
+
|
|
5
17
|
## 3.8.0 — 2026-11-02
|
|
6
18
|
|
|
7
19
|
**Charness can now make a one-time pairing line for a runner machine — `charness runners pair` — and keeps the machines that used it in a registry (`charness runners ls | remove | pause | resume`); the runner's own side and the use of paired runners by `remote-run` follow in the same release.**
|
package/DEVELOPMENT.md
CHANGED
|
@@ -164,7 +164,9 @@ layout, from the teardown, from a detached reaper and at the next start.
|
|
|
164
164
|
|
|
165
165
|
The paired-runner flows (`runnerLinkE2e.test.ts`, `remoteRunPairedE2e.test.ts`, `runnersScreenE2e.test.ts`) use the same loopback `sshd` as «the charness
|
|
166
166
|
host» (its `AuthorizedKeysFile` pointed at a temp `.ssh`) and `charness-runner` in a temp `HOME`, so they never touch the real `~/.ssh`;
|
|
167
|
-
`runnerServiceTakeoverE2e.test.ts` needs only real Pueue (the service manager is a recording stand-in).
|
|
167
|
+
`runnerServiceTakeoverE2e.test.ts` needs only real Pueue (the service manager is a recording stand-in). `runnerAdminLineE2e.test.ts` (the admin pairing line) also needs
|
|
168
|
+
`fakeroot`: root, a second account and the service manager are stand-ins in `runnerAdminLineE2e/` (`sudo` runs the line under `fakeroot`, `sudo -u <account> -H` hands a
|
|
169
|
+
command to the real user with the stand-in account's `HOME`, and plants a trap in the account's launcher that fails the flow if root ever starts it); everything else — the line's own `sh`, the download, the pairing, the root step, the service install — is real. Same tools, same local skip and CI failure.
|
|
168
170
|
|
|
169
171
|
Node applies `--test-timeout` to a whole test FILE (a `describe`'s own `timeout` cannot extend it), so a file that
|
|
170
172
|
hangs or leaves a process alive fails by name when its limit passes, instead of hanging the run. A long-running
|
package/SETUP.md
CHANGED
|
@@ -391,9 +391,10 @@ had run locally. Without a runner nothing changes for anyone, and agents are not
|
|
|
391
391
|
**Pair it (the normal way).** Needs this machine's ordinary `sshd` (key login on) with an address the runner can reach — nothing else is
|
|
392
392
|
opened or changed, no root, no VPN — and on the runner machine Node 22.12+, `ssh` and `tar`. In General send `/runners` → **+ Pair a new
|
|
393
393
|
runner**; the first time the bot asks which address runners dial (the `runnerHost` row of the [instance settings](#instance-settings-settingsjson)) and
|
|
394
|
-
proposes the public address it finds. It posts
|
|
395
|
-
|
|
396
|
-
|
|
394
|
+
proposes the public address it finds. It posts two lines (valid 10 minutes, single use, one code): the first from an admin account of the
|
|
395
|
+
runner machine — it pairs a standard user there (`runner` unless you change the last word of the line) and installs its always-on service
|
|
396
|
+
in one go — the second as the account that will run the jobs, with `charness-runner service install` afterwards to keep it running. An
|
|
397
|
+
instance without Telegram uses `charness runners pair --host host.example`. The steps, the services (a Mac that stays on while logged out), removing and the safety
|
|
397
398
|
model: [docs/remote-run.md](docs/remote-run.md#pair-a-runner).
|
|
398
399
|
|
|
399
400
|
**Or by hand over plain ssh** — for a machine that cannot dial this one: list it in `~/.config/charness/runners.json` (one file per OS
|
package/dist/cli.d.ts
CHANGED
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAGA,OAAO,gCAAgC,CAAC"}
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAGA,OAAO,gCAAgC,CAAC;AAgLxC,4GAA4G;AAC5G,wBAAgB,MAAM,IAAI,IAAI,CAM7B"}
|
package/dist/cli.js
CHANGED
|
@@ -34,6 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
34
34
|
};
|
|
35
35
|
})();
|
|
36
36
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
|
+
exports.runCli = runCli;
|
|
37
38
|
// FIRST import, on purpose: it snapshots the launch environment before anything reads a `.env` file into `process.env`.
|
|
38
39
|
require("./selfUpdate/launchEnvironment");
|
|
39
40
|
const fs = __importStar(require("fs"));
|
|
@@ -41,7 +42,6 @@ const path = __importStar(require("path"));
|
|
|
41
42
|
const applyDnsFix_1 = require("./cli/applyDnsFix");
|
|
42
43
|
const bot_1 = require("./cli/bot");
|
|
43
44
|
const hot_1 = require("./cli/hot");
|
|
44
|
-
(0, applyDnsFix_1.applyDnsFix)();
|
|
45
45
|
/** How long a finished `runner-gate` waits for its stdout to drain before it ends the process. */
|
|
46
46
|
const gateExitGraceMs = 5000;
|
|
47
47
|
/**
|
|
@@ -195,8 +195,15 @@ async function main() {
|
|
|
195
195
|
printUsage();
|
|
196
196
|
process.exit(2);
|
|
197
197
|
}
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
198
|
+
/** @description Run the command line (`process.argv`); a failure is printed and ends the process with 1. */
|
|
199
|
+
function runCli() {
|
|
200
|
+
(0, applyDnsFix_1.applyDnsFix)();
|
|
201
|
+
main().catch((err) => {
|
|
202
|
+
console.error(err);
|
|
203
|
+
process.exit(1);
|
|
204
|
+
});
|
|
205
|
+
}
|
|
206
|
+
// Only when this file IS the program (`node dist/cli.js`, the `charness` bin, `tsx src/cli.ts`): importing it — `index.ts`, the self-check — starts nothing.
|
|
207
|
+
if (require.main === module)
|
|
208
|
+
runCli();
|
|
202
209
|
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -100,7 +100,7 @@ export interface JiraInboundDeps {
|
|
|
100
100
|
/** An @-mention of the AI account wakes it (`config.isMentionWakeOn`); never without {@link trust} — nobody could be judged. */
|
|
101
101
|
isMentionWakeOn: boolean;
|
|
102
102
|
/** The open requests of an issue's conversation — a hand-over's requester who mentions the AI is already served (D9). */
|
|
103
|
-
listOpenRequests: (key: SessionKey) => ReadonlyArray<Pick<OpenRequestState, 'origin'>>;
|
|
103
|
+
listOpenRequests: (key: SessionKey) => ReadonlyArray<Pick<OpenRequestState, 'id' | 'origin'>>;
|
|
104
104
|
now: () => number;
|
|
105
105
|
/** Bind the issue's conversation to its project's folder. */
|
|
106
106
|
bindConversation: (key: SessionKey, folder: string) => Promise<void>;
|
|
@@ -153,6 +153,12 @@ export declare class JiraInbound {
|
|
|
153
153
|
private readonly postingIssueKeys;
|
|
154
154
|
/** Per issue, its `updated` as of the last mention scan that decided every comment — in memory only: a restart scans once more. */
|
|
155
155
|
private readonly lastUpdatedByIssue;
|
|
156
|
+
/**
|
|
157
|
+
* The mention requests whose stored prompt can be rebuilt with the hand-over requests that are open NOW, by request id —
|
|
158
|
+
* in memory only (a restart leaves the stored text, whose wording holds on its own) and bounded: an entry of a request
|
|
159
|
+
* that is no longer open is dropped whenever another is added.
|
|
160
|
+
*/
|
|
161
|
+
private readonly promptRebuilders;
|
|
156
162
|
constructor(deps: JiraInboundDeps);
|
|
157
163
|
/** @description Poll now, then every `pollIntervalMs` after each poll ENDS (never two at once). */
|
|
158
164
|
start(): void;
|
|
@@ -191,6 +197,24 @@ export declare class JiraInbound {
|
|
|
191
197
|
/** One comment failing (the issue could not be read for its prompt, say) leaves the others' decisions standing; the next poll retries it. */
|
|
192
198
|
private getMentionDecisionSafely;
|
|
193
199
|
private getMentionDecision;
|
|
200
|
+
/**
|
|
201
|
+
* The hand-over requests (`trackerEvent`) the conversation has open, each with its requester named as the issue's own
|
|
202
|
+
* data names them — what a mention note says goes on. A mention request itself is not one: it hands nothing over.
|
|
203
|
+
*/
|
|
204
|
+
private getOpenHandOvers;
|
|
205
|
+
/**
|
|
206
|
+
* `handOvers` — the ones the note named when the prompt was built — without those that have finished since. Never more:
|
|
207
|
+
* the rest of the note (who holds the issue, in which status) is as of that moment, and a hand-over that opened later
|
|
208
|
+
* would be «open when this comment came in» next to an issue state it does not fit.
|
|
209
|
+
*/
|
|
210
|
+
private getStillOpenHandOvers;
|
|
211
|
+
private rememberPromptRebuilder;
|
|
212
|
+
/**
|
|
213
|
+
* @description The `StoredPromptRefresher` of this poller: a stored mention prompt (a wake-up's resend, the resume of a
|
|
214
|
+
* usage-limit wait) without the hand-over requests that have finished since it was built. Any other text — or a prompt
|
|
215
|
+
* of a request that is no longer open, or one built before a restart — comes back as it is.
|
|
216
|
+
*/
|
|
217
|
+
readonly refreshPromptText: (promptText: string) => string;
|
|
194
218
|
private openRequest;
|
|
195
219
|
/**
|
|
196
220
|
* @description Post the request, then record its trigger — also when the post
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inbound.d.ts","sourceRoot":"","sources":["../../../src/connectors/jira/inbound.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE5E,OAAO,EAAwC,KAAK,WAAW,EAA6B,KAAK,UAAU,EAAoC,MAAM,UAAU,CAAC;AAIhK,OAAO,KAAK,EAAE,cAAc,EAAqB,MAAM,cAAc,CAAC;AACtE,OAAO,EAAsF,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAIxI,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"inbound.d.ts","sourceRoot":"","sources":["../../../src/connectors/jira/inbound.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,7 @@ const issueBlocks_1 = require("./issueBlocks");
|
|
|
13
13
|
const issueContext_1 = require("./issueContext");
|
|
14
14
|
const prompt_1 = require("./prompt");
|
|
15
15
|
const issueDelta_1 = require("./issueDelta");
|
|
16
|
+
const storedPromptRefresh_1 = require("../../requests/storedPromptRefresh");
|
|
16
17
|
const promptSpill_1 = require("./promptSpill");
|
|
17
18
|
const trustedGroup_1 = require("./trustedGroup");
|
|
18
19
|
/**
|
|
@@ -97,6 +98,10 @@ function buildJiraTriggerJql(projects, mentionWindowMs) {
|
|
|
97
98
|
const windowMinutes = Math.ceil(mentionWindowMs / msPerMinute);
|
|
98
99
|
return `project in (${projectKeys}) AND ((${assignedBranch}) OR (comment ~ currentUser() AND updated >= -${windowMinutes}m)) ORDER BY created ASC`;
|
|
99
100
|
}
|
|
101
|
+
/** The first line of a stored request prompt names its request: `[Request req_… · from: …]`. */
|
|
102
|
+
const storedPromptRequestIdPattern = /^\[Request (req_[A-Za-z0-9_-]+) · /;
|
|
103
|
+
/** How many mention prompts can be rebuilt at delivery at once (each keeps its issue in memory). */
|
|
104
|
+
const promptRebuildersMax = 32;
|
|
100
105
|
class JiraInbound {
|
|
101
106
|
deps;
|
|
102
107
|
timer = null;
|
|
@@ -112,6 +117,12 @@ class JiraInbound {
|
|
|
112
117
|
postingIssueKeys = new Set();
|
|
113
118
|
/** Per issue, its `updated` as of the last mention scan that decided every comment — in memory only: a restart scans once more. */
|
|
114
119
|
lastUpdatedByIssue = new Map();
|
|
120
|
+
/**
|
|
121
|
+
* The mention requests whose stored prompt can be rebuilt with the hand-over requests that are open NOW, by request id —
|
|
122
|
+
* in memory only (a restart leaves the stored text, whose wording holds on its own) and bounded: an entry of a request
|
|
123
|
+
* that is no longer open is dropped whenever another is added.
|
|
124
|
+
*/
|
|
125
|
+
promptRebuilders = new Map();
|
|
115
126
|
constructor(deps) {
|
|
116
127
|
this.deps = deps;
|
|
117
128
|
}
|
|
@@ -120,11 +131,13 @@ class JiraInbound {
|
|
|
120
131
|
if (this.isRunning)
|
|
121
132
|
return;
|
|
122
133
|
this.isRunning = true;
|
|
134
|
+
(0, storedPromptRefresh_1.setStoredPromptRefresher)(this.refreshPromptText);
|
|
123
135
|
this.stopListeningForSlots = this.deps.slots.onSlotFreed(() => this.pollSoon());
|
|
124
136
|
this.scheduleNext(0);
|
|
125
137
|
}
|
|
126
138
|
stop() {
|
|
127
139
|
this.isRunning = false;
|
|
140
|
+
(0, storedPromptRefresh_1.clearStoredPromptRefresher)(this.refreshPromptText);
|
|
128
141
|
if (this.timer)
|
|
129
142
|
clearTimeout(this.timer);
|
|
130
143
|
this.timer = null;
|
|
@@ -396,6 +409,52 @@ class JiraInbound {
|
|
|
396
409
|
}
|
|
397
410
|
return this.openRequest(issue, project, trigger, comment.author ?? null, at);
|
|
398
411
|
}
|
|
412
|
+
/**
|
|
413
|
+
* The hand-over requests (`trackerEvent`) the conversation has open, each with its requester named as the issue's own
|
|
414
|
+
* data names them — what a mention note says goes on. A mention request itself is not one: it hands nothing over.
|
|
415
|
+
*/
|
|
416
|
+
getOpenHandOvers(key, context) {
|
|
417
|
+
return this.deps.listOpenRequests(key)
|
|
418
|
+
.filter((request) => request.origin.kind === 'trackerEvent')
|
|
419
|
+
.map((request) => ({ requestId: request.id, requester: (0, issueContext_1.findAccountInContext)(context, (0, requestGroup_1.getRequestRequester)(request.origin)) }));
|
|
420
|
+
}
|
|
421
|
+
/**
|
|
422
|
+
* `handOvers` — the ones the note named when the prompt was built — without those that have finished since. Never more:
|
|
423
|
+
* the rest of the note (who holds the issue, in which status) is as of that moment, and a hand-over that opened later
|
|
424
|
+
* would be «open when this comment came in» next to an issue state it does not fit.
|
|
425
|
+
*/
|
|
426
|
+
getStillOpenHandOvers(key, handOvers) {
|
|
427
|
+
const openIds = new Set(this.deps.listOpenRequests(key).map((request) => request.id));
|
|
428
|
+
return handOvers.filter((handOver) => openIds.has(handOver.requestId));
|
|
429
|
+
}
|
|
430
|
+
rememberPromptRebuilder(key, requestId, rebuild) {
|
|
431
|
+
for (const [id, entry] of this.promptRebuilders) {
|
|
432
|
+
if (!this.deps.listOpenRequests(entry.key).some((request) => request.id === id))
|
|
433
|
+
this.promptRebuilders.delete(id);
|
|
434
|
+
}
|
|
435
|
+
this.promptRebuilders.set(requestId, { key, rebuild });
|
|
436
|
+
for (const id of this.promptRebuilders.keys()) {
|
|
437
|
+
if (this.promptRebuilders.size <= promptRebuildersMax)
|
|
438
|
+
break;
|
|
439
|
+
this.promptRebuilders.delete(id);
|
|
440
|
+
}
|
|
441
|
+
}
|
|
442
|
+
/**
|
|
443
|
+
* @description The `StoredPromptRefresher` of this poller: a stored mention prompt (a wake-up's resend, the resume of a
|
|
444
|
+
* usage-limit wait) without the hand-over requests that have finished since it was built. Any other text — or a prompt
|
|
445
|
+
* of a request that is no longer open, or one built before a restart — comes back as it is.
|
|
446
|
+
*/
|
|
447
|
+
refreshPromptText = (promptText) => {
|
|
448
|
+
const requestId = storedPromptRequestIdPattern.exec(promptText)?.[1];
|
|
449
|
+
const entry = requestId === undefined ? undefined : this.promptRebuilders.get(requestId);
|
|
450
|
+
if (requestId === undefined || !entry)
|
|
451
|
+
return promptText;
|
|
452
|
+
if (!this.deps.listOpenRequests(entry.key).some((request) => request.id === requestId)) {
|
|
453
|
+
this.promptRebuilders.delete(requestId);
|
|
454
|
+
return promptText;
|
|
455
|
+
}
|
|
456
|
+
return entry.rebuild();
|
|
457
|
+
};
|
|
399
458
|
async openRequest(issue, project, trigger, requester, at) {
|
|
400
459
|
const { deps } = this;
|
|
401
460
|
const { trust } = deps;
|
|
@@ -409,6 +468,8 @@ class JiraInbound {
|
|
|
409
468
|
const blocks = (0, issueBlocks_1.buildIssueBlocks)(context, project.extraFields, deps.aiAccountId, blockTrust);
|
|
410
469
|
deps.noteShownSummary?.(issue.key, (0, issueBlocks_1.getShownIssueSummary)(context, blockTrust));
|
|
411
470
|
const key = (0, sessionKeyCodec_1.makeJiraKey)(issue.key);
|
|
471
|
+
const statusId = context.issue.fields.status?.id;
|
|
472
|
+
const isMention = trigger.kind === 'mentioned';
|
|
412
473
|
const promptInput = {
|
|
413
474
|
issueKey: issue.key,
|
|
414
475
|
statusName: context.issue.fields.status?.name,
|
|
@@ -417,6 +478,10 @@ class JiraInbound {
|
|
|
417
478
|
requester,
|
|
418
479
|
assignee: context.issue.fields.assignee ?? null,
|
|
419
480
|
isAssignedToYou: context.issue.fields.assignee?.accountId === deps.aiAccountId,
|
|
481
|
+
isInWorkStatus: statusId !== undefined && project.triggerStatusIds.has(statusId),
|
|
482
|
+
// As of building the prompt only: the text is rebuilt right before it is forwarded (`buildText`) and when a stored copy
|
|
483
|
+
// is read for a resend (`refreshPromptText`), and the note's wording holds where neither happens (a restart in between).
|
|
484
|
+
openHandOvers: isMention ? this.getOpenHandOvers(key, context) : [],
|
|
420
485
|
triggerStatusNames: project.triggerStatusNames,
|
|
421
486
|
isTextFiltered: trust !== null,
|
|
422
487
|
};
|
|
@@ -427,8 +492,9 @@ class JiraInbound {
|
|
|
427
492
|
measure: (candidate) => (0, prompt_1.buildJiraRequestPrompt)({ ...promptInput, requestId: promptSpill_1.standInRequestId, ...candidate }).length,
|
|
428
493
|
});
|
|
429
494
|
await deps.bindConversation(key, project.folder);
|
|
430
|
-
const createPrompt = (requestId, supersededRequestIds) => (0, prompt_1.buildJiraRequestPrompt)({
|
|
495
|
+
const createPrompt = (requestId, supersededRequestIds, openHandOvers = promptInput.openHandOvers) => (0, prompt_1.buildJiraRequestPrompt)({
|
|
431
496
|
...promptInput,
|
|
497
|
+
openHandOvers,
|
|
432
498
|
requestId,
|
|
433
499
|
...fitted,
|
|
434
500
|
supersededRequestIds,
|
|
@@ -442,6 +508,8 @@ class JiraInbound {
|
|
|
442
508
|
}, createPrompt);
|
|
443
509
|
const supersededRequestIds = request.supersededRequestIds ?? [];
|
|
444
510
|
const fullText = createPrompt(request.id, supersededRequestIds);
|
|
511
|
+
if (isMention)
|
|
512
|
+
this.rememberPromptRebuilder(key, request.id, () => createPrompt(request.id, supersededRequestIds, this.getStillOpenHandOvers(key, promptInput.openHandOvers)));
|
|
445
513
|
const prompt = {
|
|
446
514
|
fullText,
|
|
447
515
|
// C5: built only once the post knows whether the session is fresh — right before the forward.
|
|
@@ -451,7 +519,11 @@ class JiraInbound {
|
|
|
451
519
|
const delta = (0, issueDelta_1.getIssueDelta)(fitted.blocks, isWhole ? {} : snapshot.sent);
|
|
452
520
|
// Counted as sent only once the agent takes it in (C4): the connector commits it then.
|
|
453
521
|
deps.contextLedger.recordBuild(issue.key, request.id, snapshot.generation, delta.sent);
|
|
454
|
-
|
|
522
|
+
// The hand-over requests the mention note names are checked again here: the post may have waited behind a running turn.
|
|
523
|
+
const openHandOvers = this.getStillOpenHandOvers(key, promptInput.openHandOvers);
|
|
524
|
+
return isWhole
|
|
525
|
+
? createPrompt(request.id, supersededRequestIds, openHandOvers)
|
|
526
|
+
: (0, prompt_1.buildJiraDeltaPrompt)({ ...promptInput, openHandOvers, requestId: request.id, supersededRequestIds, delta });
|
|
455
527
|
},
|
|
456
528
|
};
|
|
457
529
|
// Not awaited: a busy session may take minutes to take the prompt, and the rest of
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inbound.js","sourceRoot":"","sources":["../../../src/connectors/jira/inbound.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"inbound.js","sourceRoot":"","sources":["../../../src/connectors/jira/inbound.ts"],"names":[],"mappings":";;;AAoEA,kDAEC;AAQD,wDAEC;AA+FD,kDASC;AAtLD,8DAA6G;AAC7G,qCAAgK;AAChK,+BAA+C;AAC/C,uDAAwE;AACxE,uCAAkJ;AAElJ,+CAAwI;AACxI,iDAAoG;AACpG,qCAA+F;AAC/F,6CAA6C;AAG7C,4EAA0G;AAC1G,+CAAoE;AACpE,iDAA2E;AAG3E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEU,QAAA,kBAAkB,GAAG,EAAE,CAAC;AACrC,4EAA4E;AAC/D,QAAA,qBAAqB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AACpD,8GAA8G;AACjG,QAAA,sBAAsB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AACpD,0GAA0G;AAC7F,QAAA,2BAA2B,GAAG,GAAG,CAAC;AAC/C,MAAM,WAAW,GAAG,EAAE,GAAG,IAAI,CAAC;AAC9B,oHAAoH;AACpH,MAAM,2BAA2B,GAAG,GAAG,CAAC;AAExC;;;;GAIG;AACH,SAAgB,mBAAmB,CAAC,MAAc,EAAE,YAAoB;IACtE,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,6BAAqB,CAAC,CAAC,CAAC;AACvF,CAAC;AACD,wGAAwG;AAC3F,QAAA,gBAAgB,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AAEzF;;;GAGG;AACH,SAAgB,sBAAsB,CAAC,cAAsB;IAC3D,OAAO,IAAI,CAAC,GAAG,CAAC,8BAAsB,EAAE,CAAC,GAAG,cAAc,CAAC,CAAC;AAC9D,CAAC;AA8BD,sEAAsE;AACtE,MAAM,cAAc,GAAmC,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;AAE9G;;;GAGG;AACH,MAAM,mBAAmB,GAAmC,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;AAqDpI;;;;GAIG;AACH,SAAgB,mBAAmB,CAAC,QAAiD,EAAE,eAA8B;IACnH,MAAM,WAAW,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3F,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;SACvG,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,QAAQ,GAAG,CAAC;SAClC,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,cAAc,GAAG,2CAA2C,SAAS,GAAG,CAAC;IAC/E,IAAI,eAAe,KAAK,IAAI;QAAE,OAAO,eAAe,WAAW,SAAS,cAAc,uBAAuB,CAAC;IAC9G,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC,CAAC;IAC/D,OAAO,eAAe,WAAW,WAAW,cAAc,iDAAiD,aAAa,0BAA0B,CAAC;AACrJ,CAAC;AAED,gGAAgG;AAChG,MAAM,4BAA4B,GAAG,oCAAoC,CAAC;AAC1E,oGAAoG;AACpG,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAE/B,MAAa,WAAW;IAqBO;IApBrB,KAAK,GAA0B,IAAI,CAAC;IACpC,SAAS,GAAG,KAAK,CAAC;IAC1B,4EAA4E;IACpE,SAAS,GAAG,KAAK,CAAC;IAC1B,8EAA8E;IACtE,iBAAiB,GAAG,KAAK,CAAC;IAC1B,qBAAqB,GAAwB,IAAI,CAAC;IAC1D,iEAAiE;IACzD,YAAY,GAAG,CAAC,CAAC;IACzB,4DAA4D;IAC3C,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;IACtD,mIAAmI;IAClH,kBAAkB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAChE;;;;OAIG;IACc,gBAAgB,GAAG,IAAI,GAAG,EAAsD,CAAC;IAElG,YAA6B,IAAqB;QAArB,SAAI,GAAJ,IAAI,CAAiB;IAAG,CAAC;IAEtD,mGAAmG;IACnG,KAAK;QACH,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAA,8CAAwB,EAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACjD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAChF,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;IAED,IAAI;QACF,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAA,gDAA0B,EAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACnD,IAAI,IAAI,CAAC,KAAK;YAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,qBAAqB,EAAE,EAAE,CAAC;QAC/B,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;IACpC,CAAC;IAED;;;OAGG;IACH,QAAQ;QACN,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAC5B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC9B,OAAO;QACT,CAAC;QACD,IAAI,IAAI,CAAC,KAAK;YAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;IAEO,YAAY,CAAC,OAAe;QAClC,mGAAmG;QACnG,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC3B,KAAK,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC/B,CAAC,EAAE,OAAO,CAAC,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,gBAAgB;QAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACxB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,sBAAa,IAAI,KAAK,YAAY,wCAAyB,EAAE,CAAC;gBACjF,sGAAsG;gBACtG,4BAA4B;gBAC5B,OAAO,CAAC,KAAK,CAAC,2BAA2B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC1D,IAAI,CAAC,IAAI,EAAE,CAAC;gBACZ,OAAO;YACT,CAAC;YACD,+EAA+E;YAC/E,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,uBAAuB,IAAI,CAAC,YAAY,eAAe,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChI,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,CAAC;QACD,kFAAkF;QAClF,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,YAAY,KAAK,CAAC,CAAC;QACtE,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,IAAI,IAAI,CAAC,SAAS;YAAE,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAC5H,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,QAAQ;QACZ,MAAM,SAAS,GAAG,IAAI,GAAG,EAA6B,CAAC;QACvD,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAClD,MAAM,GAAG,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QACrE,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;QAC5C,IAAI,aAAiC,CAAC;QACtC,GAAG,CAAC;YACF,kHAAkH;YAClH,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;gBAC/C,GAAG;gBACH,MAAM,EAAE,wBAAgB;gBACxB,mBAAmB,EAAE,IAAI;gBACzB,UAAU,EAAE,0BAAkB;gBAC9B,aAAa;aACd,CAAC,CAAC;YACH,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACjC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBACrD,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;gBACnC,IAAI,eAAe,KAAK,IAAI,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;oBAC1D,KAAK,MAAM,CAAC,WAAW,EAAE,eAAe,CAAC,IAAI,MAAM,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC;wBAAE,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;gBACxI,CAAC;YACH,CAAC;YACD,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,SAAS,CAAC,CAAC;QAC9E,CAAC,QAAQ,aAAa,EAAE;QACxB,mHAAmH;QACnH,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,EAAE,CAAC;YACtD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAAE,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACjF,CAAC;QACD,0HAA0H;QAC1H,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;QACjF,MAAM,KAAK,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QACrF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,QAAQ,IAAI,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC/H,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,gGAAgG;IACxF,qBAAqB,CAAC,KAAgB;QAC5C,MAAM,UAAU,GAAG,IAAA,wCAAsB,EAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrD,OAAO,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC9E,CAAC;IAED,oHAAoH;IAC5G,kBAAkB;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACzH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,SAAS,CAAI,QAAgB,EAAE,IAAY,EAAE,GAAqB,EAAE,QAAW;QAC3F,IAAI,CAAC;YACH,OAAO,MAAM,GAAG,EAAE,CAAC;QACrB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,sBAAa;gBAAE,MAAM,KAAK,CAAC;YAChD,OAAO,CAAC,IAAI,CAAC,UAAU,QAAQ,KAAK,IAAI,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACrG,OAAO,QAAQ,CAAC;QAClB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,KAAgB;QAC9C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC9F,IAAI,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAA,6BAAW,EAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3F,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,KAAgB;QACxC,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAClD,oFAAoF;QACpF,IAAI,CAAC,OAAO;YAAE,OAAO,YAAY,CAAC;QAClC,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;QACzC,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,KAAK,IAAI,CAAC,WAAW,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/H,OAAO,aAAa,CAAC;QACvB,CAAC;QACD,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC;YAAE,OAAO,SAAS,CAAC;QAC3D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACrD,IAAI,KAAK,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC;QACpC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;QACrC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,IAAI,OAAO,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;YACnD,IAAI,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,CAAC;YACtG,OAAO,cAAc,CAAC;QACxB,CAAC;QACD,8GAA8G;QAC9G,gHAAgH;QAChH,+DAA+D;QAC/D,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,IAAI,SAAS,CAAC,EAAE,CAAC;YAC1E,sHAAsH;YACtH,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;gBAAE,OAAO,QAAQ,CAAC;YACzH,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACvE,OAAO,WAAW,CAAC;QACrB,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAClF,2FAA2F;YAC3F,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;gBAAE,OAAO,QAAQ,CAAC;YACtH,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YAC3C,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,0HAA0H;QAC1H,kFAAkF;QAClF,MAAM,GAAG,GAAG,IAAA,6BAAW,EAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QAC9D,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,aAAa;gBAAE,OAAO,SAAS,CAAC;YAC1C,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAC7C,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;YAChF,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAC5B,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YAChC,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,yBAAyB,CAAC,KAAgB;QAChD,MAAM,MAAM,GAAG,IAAI,GAAG,CAA4B,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,GAAG,2BAA2B,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;QACrH,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;IACpG,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,mBAAmB,CAAC,KAAgB;QAChD,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACtB,MAAM,SAAS,GAAG,IAAI,GAAG,EAA6B,CAAC;QACvD,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAClD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QACzC,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC;QACjC,IAAI,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,OAAO;YAAE,OAAO,SAAS,CAAC;QAClG,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC;YAAE,OAAO,SAAS,CAAC;QAC3D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,GAAG,EAAE,mCAA2B,CAAC,CAAC;QAC7F,8GAA8G;QAC9G,mEAAmE;QACnE,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,sBAAsB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC/E,MAAM,iBAAiB,GAAG,QAAQ;aAC/B,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,CAAC,WAAW;eAC9D,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,aAAa;eACtG,IAAA,4BAAsB,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;eAC/D,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,gCAAsB,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;aACtF,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/E,IAAI,qBAAqB,GAAG,IAAI,CAAC;QACjC,KAAK,MAAM,OAAO,IAAI,iBAAiB,EAAE,CAAC;YACxC,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzC,qBAAqB,GAAG,KAAK,CAAC;gBAC9B,MAAM;YACR,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YACrF,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,GAAG,2BAA2B,GAAG,gCAAsB,GAAG,OAAO,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC5G,IAAI,QAAQ,KAAK,QAAQ;gBAAE,qBAAqB,GAAG,KAAK,CAAC;QAC3D,CAAC;QACD,IAAI,qBAAqB,IAAI,OAAO,KAAK,SAAS;YAAE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACpG,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,6IAA6I;IACrI,wBAAwB,CAAC,KAAgB,EAAE,OAA2B,EAAE,OAAoB,EAAE,KAAgB;QACpH,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,sBAAsB,OAAO,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC;IAClJ,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,KAAgB,EAChB,OAA2B,EAC3B,OAAoB,EACpB,KAAgB;QAEhB,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACtB,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,IAAA,8BAAoB,EAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC;QACzE,MAAM,MAAM,GAAG,CAAC,OAA2C,EAAE,QAAsC,EAAE,EAAW,EAAE,CAChH,IAAI,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;QAClG,gHAAgH;QAChH,kGAAkG;QAClG,IAAI,CAAC,IAAA,mCAAqB,EAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;gBAAE,OAAO,QAAQ,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,CAAC,GAAG,4BAA4B,OAAO,CAAC,EAAE,qEAAqE,CAAC,CAAC;YAC5I,OAAO,WAAW,CAAC;QACrB,CAAC;QACD,iHAAiH;QACjH,6GAA6G;QAC7G,iHAAiH;QACjH,8CAA8C;QAC9C,MAAM,kBAAkB,GAAG,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC;QACrD,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAA,6BAAW,EAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;YAC/E,MAAM,aAAa,GAAG,IAAA,kCAAmB,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC1D,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,cAAc,IAAI,CAAC,aAAa,KAAK,kBAAkB,IAAI,aAAa,KAAK,6BAAc,CAAC,CAAC;QAC9H,CAAC,CAAC,CAAC;QACH,IAAI,SAAS;YAAE,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC/D,IAAI,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAClF,uHAAuH;YACvH,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,qCAAqC,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAC1F,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC;gBAAE,OAAO,QAAQ,CAAC;YACxE,IAAI,WAAW;gBAAE,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACnD,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;IAC/E,CAAC;IAED;;;OAGG;IACK,gBAAgB,CAAC,GAAe,EAAE,OAAyB;QACjE,OAAO,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC;aACnC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC;aAC3D,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAA,mCAAoB,EAAC,OAAO,EAAE,IAAA,kCAAmB,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAClI,CAAC;IAED;;;;OAIG;IACK,qBAAqB,CAAC,GAAe,EAAE,SAAsC;QACnF,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;QACtF,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;IACzE,CAAC;IAEO,uBAAuB,CAAC,GAAe,EAAE,SAAiB,EAAE,OAAqB;QACvF,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAChD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC;gBAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpH,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;QACvD,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC;YAC9C,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,IAAI,mBAAmB;gBAAE,MAAM;YAC7D,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED;;;;OAIG;IACM,iBAAiB,GAAG,CAAC,UAAkB,EAAU,EAAE;QAC1D,MAAM,SAAS,GAAG,4BAA4B,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACrE,MAAM,KAAK,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACzF,IAAI,SAAS,KAAK,SAAS,IAAI,CAAC,KAAK;YAAE,OAAO,UAAU,CAAC;QACzD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE,CAAC;YACvF,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACxC,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC;IACzB,CAAC,CAAC;IAEM,KAAK,CAAC,WAAW,CACvB,KAAgB,EAChB,OAA2B,EAC3B,OAAyB,EACzB,SAA6B,EAC7B,EAAU;QAEV,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACtB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,4GAA4G;QAC5G,mGAAmG;QACnG,MAAM,OAAO,GAAG,MAAM,IAAA,oCAAqB,EAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC;QAC5I,MAAM,UAAU,GAA0B,KAAK,IAAI;YACjD,cAAc,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC;YAC1D,sBAAsB,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;SACtD,CAAC;QACF,MAAM,MAAM,GAAG,IAAA,8BAAgB,EAAC,OAAO,EAAE,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QAC5F,IAAI,CAAC,gBAAgB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,IAAA,kCAAoB,EAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;QAC9E,MAAM,GAAG,GAAG,IAAA,6BAAW,EAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;QACjD,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC;QAC/C,MAAM,WAAW,GAAG;YAClB,QAAQ,EAAE,KAAK,CAAC,GAAG;YACnB,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI;YAC7C,QAAQ,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,WAAW,KAAK,CAAC,GAAG,EAAE;YACnE,OAAO;YACP,SAAS;YACT,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI;YAC/C,eAAe,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,KAAK,IAAI,CAAC,WAAW;YAC9E,cAAc,EAAE,QAAQ,KAAK,SAAS,IAAI,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC;YAChF,wHAAwH;YACxH,yHAAyH;YACzH,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;YACnE,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;YAC9C,cAAc,EAAE,KAAK,KAAK,IAAI;SAC/B,CAAC;QACF,iHAAiH;QACjH,MAAM,MAAM,GAAG,MAAM,IAAA,+BAAiB,EAAC;YACrC,MAAM;YACN,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;YAC9B,OAAO,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,IAAA,+BAAsB,EAAC,EAAE,GAAG,WAAW,EAAE,SAAS,EAAE,8BAAgB,EAAE,GAAG,SAAS,EAAE,CAAC,CAAC,MAAM;SACrH,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QACjD,MAAM,YAAY,GAAG,CAAC,SAAiB,EAAE,oBAAuC,EAAE,aAAa,GAAG,WAAW,CAAC,aAAa,EAAU,EAAE,CAAC,IAAA,+BAAsB,EAAC;YAC7J,GAAG,WAAW;YACd,aAAa;YACb,SAAS;YACT,GAAG,MAAM;YACT,oBAAoB;SACrB,CAAC,CAAC;QACH,gGAAgG;QAChG,kGAAkG;QAClG,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE;YAC5C,iHAAiH;YACjH,IAAI,EAAE,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,cAAc;YACtE,UAAU,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,wCAAyB,CAAC,EAAE,SAAS,EAAE,SAAS,IAAI,6BAAc,EAAE;SACvI,EAAE,YAAY,CAAC,CAAC;QACjB,MAAM,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,IAAI,EAAE,CAAC;QAChE,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,oBAAoB,CAAC,CAAC;QAChE,IAAI,SAAS;YAAE,IAAI,CAAC,uBAAuB,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,oBAAoB,EAAE,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAC/K,MAAM,MAAM,GAAsB;YAChC,QAAQ;YACR,8FAA8F;YAC9F,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;gBACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC3D,MAAM,OAAO,GAAG,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;gBACnE,MAAM,KAAK,GAAG,IAAA,0BAAa,EAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACzE,uFAAuF;gBACvF,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;gBACvF,wHAAwH;gBACxH,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;gBACjF,OAAO,OAAO;oBACZ,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,oBAAoB,EAAE,aAAa,CAAC;oBAC/D,CAAC,CAAC,IAAA,6BAAoB,EAAC,EAAE,GAAG,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,CAAC;YAClH,CAAC;SACF,CAAC;QACF,mFAAmF;QACnF,+EAA+E;QAC/E,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrC,KAAK,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QACvJ,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,aAAa,CAAC,GAAe,EAAE,SAAiB,EAAE,MAAyB,EAAE,MAAyB;QAClH,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QACtD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,QAAQ,aAAa,SAAS,gBAAgB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACxI,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;YAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChD,CAAC;IAEO,YAAY,CAAC,MAAyB;QAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACvD,IAAI,CAAC,UAAU;YAAE,OAAO,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,QAAQ,aAAa,MAAM,CAAC,SAAS,KAAK,MAAM,CAAC,OAAO,yBAAyB,CAAC,CAAC;QAClI,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,WAAW,CAAC,KAAgB,EAAE,OAA2B;QACrE,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACtB,MAAM,KAAK,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC5F,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC;QAC/C,MAAM,SAAS,GAA2B,EAAE,CAAC;QAC7C,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,IAAI,CAAC,4BAA4B,CAAC,KAAK,CAAC,EAAE,CAAC;YAClE,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;YACxB,MAAM,OAAO,GAAG,IAAA,2BAAiB,EAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YACpD,IAAI,CAAC,OAAO;gBAAE,SAAS;YACvB,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC;gBAAE,OAAO,MAAM,CAAC;YAC7E,MAAM,gBAAgB,GAAG,OAAO,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,CAAC,WAAW;mBAClE,IAAA,sBAAY,EAAC,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;YACvE,IAAI,gBAAgB;gBAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,IAAA,sBAAY,EAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QACpH,CAAC;QACD,MAAM,OAAO,GAAG,IAAA,yBAAe,EAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,IAAI,QAAQ,CAAC,CAAC;QACpF,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC;YAAE,OAAO,MAAM,CAAC;QAC7E,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,IAAA,sBAAY,EAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;IAC9F,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,CAAC,4BAA4B,CAAC,KAAgB;QAC1D,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;QAC5B,IAAI,SAAS,IAAI,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;YAC/D,MAAM,SAAS,CAAC,SAAS,CAAC;YAC1B,OAAO;QACT,CAAC;QACD,IAAI,KAAK,GAAG,SAAS,EAAE,KAAK,CAAC;QAC7B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,8BAAqB,CAAC,CAAC;YAC3F,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,KAAK,CAAC,MAAM,CAAC;gBACnB,OAAO;YACT,CAAC;YACD,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QACtB,CAAC;QACD,KAAK,IAAI,GAAG,GAAG,KAAK,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC;YAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,8BAAqB,CAAC,CAAC;YACzD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC;YACxF,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO;YACrC,MAAM,IAAI,CAAC,MAAM,CAAC;YAClB,GAAG,GAAG,OAAO,CAAC;QAChB,CAAC;IACH,CAAC;CACF;AAzfD,kCAyfC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type JiraChangelogHistory, type JiraClient, type JiraComment, type JiraIssue, type JiraRemoteLink } from './client';
|
|
1
|
+
import { type JiraAccount, type JiraChangelogHistory, type JiraClient, type JiraComment, type JiraIssue, type JiraRemoteLink } from './client';
|
|
2
2
|
/**
|
|
3
3
|
* @description Everything one request's prompt says about an issue (plan C1,
|
|
4
4
|
* C2): the issue's own fields, ALL its comments (the issue field holds at most
|
|
@@ -7,7 +7,10 @@ import { type JiraChangelogHistory, type JiraClient, type JiraComment, type Jira
|
|
|
7
7
|
* a request is never left without its prompt. With a trusted group the issue's
|
|
8
8
|
* WHOLE changelog is read too: it names who wrote what every field says now.
|
|
9
9
|
*/
|
|
10
|
-
/**
|
|
10
|
+
/**
|
|
11
|
+
* The fields every prompt reads; a project's `extraFields` ids are added to them. `assignee` is not rendered in the
|
|
12
|
+
* issue's blocks: the mention note reads it (who has the issue, and whether it is handed to the AI account).
|
|
13
|
+
*/
|
|
11
14
|
export declare const jiraPromptIssueFields: string[];
|
|
12
15
|
export declare const jiraChildSearchPageSize = 100;
|
|
13
16
|
/** An issue type at this level or above holds child issues (an epic); level 0 holds sub-tasks, below 0 is a sub-task. */
|
|
@@ -23,6 +26,12 @@ export interface JiraIssueContext {
|
|
|
23
26
|
/** The whole changelog, oldest first — read only when the caller asked for it (`isChangelogNeeded`), else empty. */
|
|
24
27
|
changelog: JiraChangelogHistory[];
|
|
25
28
|
}
|
|
29
|
+
/**
|
|
30
|
+
* @description The account `accountId` as the issue's own data names it — reporter, creator, assignee, the authors of
|
|
31
|
+
* the comments and of the changelog entries — or null when none of them does (or none carries a display name): a
|
|
32
|
+
* request's ledger record holds an account id only.
|
|
33
|
+
*/
|
|
34
|
+
export declare function findAccountInContext(context: JiraIssueContext, accountId: string): JiraAccount | null;
|
|
26
35
|
/**
|
|
27
36
|
* @description Read the issue, its comments, its remote links and, when it can have them, its children —
|
|
28
37
|
* and, when `isChangelogNeeded`, its whole changelog.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issueContext.d.ts","sourceRoot":"","sources":["../../../src/connectors/jira/issueContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgD,KAAK,oBAAoB,EAAE,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,KAAK,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"issueContext.d.ts","sourceRoot":"","sources":["../../../src/connectors/jira/issueContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgD,KAAK,WAAW,EAAE,KAAK,oBAAoB,EAAE,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,KAAK,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AAE7L;;;;;;;GAOG;AAEH;;;GAGG;AACH,eAAO,MAAM,qBAAqB,UAGjC,CAAC;AAIF,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,yHAAyH;AACzH,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAE1C,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,UAAU,EAAE,UAAU,GAAG,aAAa,GAAG,gBAAgB,GAAG,cAAc,GAAG,kBAAkB,CAAC,CAAC;AAE3I,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,SAAS,CAAC;IACjB,oBAAoB;IACpB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,4GAA4G;IAC5G,QAAQ,EAAE,SAAS,EAAE,CAAC;IACtB,oHAAoH;IACpH,SAAS,EAAE,oBAAoB,EAAE,CAAC;CACnC;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CASrG;AAoCD;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,sBAAsB,EAC9B,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,SAAS,MAAM,EAAE,EAChC,iBAAiB,EAAE,OAAO,GACzB,OAAO,CAAC,gBAAgB,CAAC,CAS3B"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.jiraParentHierarchyLevel = exports.jiraChildSearchPageSize = exports.jiraPromptIssueFields = void 0;
|
|
4
|
+
exports.findAccountInContext = findAccountInContext;
|
|
4
5
|
exports.fetchJiraIssueContext = fetchJiraIssueContext;
|
|
5
6
|
const client_1 = require("./client");
|
|
6
7
|
/**
|
|
@@ -11,9 +12,12 @@ const client_1 = require("./client");
|
|
|
11
12
|
* a request is never left without its prompt. With a trusted group the issue's
|
|
12
13
|
* WHOLE changelog is read too: it names who wrote what every field says now.
|
|
13
14
|
*/
|
|
14
|
-
/**
|
|
15
|
+
/**
|
|
16
|
+
* The fields every prompt reads; a project's `extraFields` ids are added to them. `assignee` is not rendered in the
|
|
17
|
+
* issue's blocks: the mention note reads it (who has the issue, and whether it is handed to the AI account).
|
|
18
|
+
*/
|
|
15
19
|
exports.jiraPromptIssueFields = [
|
|
16
|
-
'summary', 'status', 'issuetype', 'priority', 'parent', 'subtasks', 'issuelinks', 'fixVersions', 'labels',
|
|
20
|
+
'summary', 'status', 'assignee', 'issuetype', 'priority', 'parent', 'subtasks', 'issuelinks', 'fixVersions', 'labels',
|
|
17
21
|
'components', 'attachment', 'description', 'reporter', 'creator',
|
|
18
22
|
];
|
|
19
23
|
/** Only the description's HTML is asked for: it names the attachment behind an inline file (C9). */
|
|
@@ -22,6 +26,22 @@ const childIssueFields = ['summary', 'status', 'issuetype'];
|
|
|
22
26
|
exports.jiraChildSearchPageSize = 100;
|
|
23
27
|
/** An issue type at this level or above holds child issues (an epic); level 0 holds sub-tasks, below 0 is a sub-task. */
|
|
24
28
|
exports.jiraParentHierarchyLevel = 1;
|
|
29
|
+
/**
|
|
30
|
+
* @description The account `accountId` as the issue's own data names it — reporter, creator, assignee, the authors of
|
|
31
|
+
* the comments and of the changelog entries — or null when none of them does (or none carries a display name): a
|
|
32
|
+
* request's ledger record holds an account id only.
|
|
33
|
+
*/
|
|
34
|
+
function findAccountInContext(context, accountId) {
|
|
35
|
+
if (!accountId)
|
|
36
|
+
return null;
|
|
37
|
+
const { reporter, creator, assignee } = context.issue.fields;
|
|
38
|
+
const candidates = [
|
|
39
|
+
reporter, creator, assignee,
|
|
40
|
+
...context.comments.flatMap((comment) => [comment.author, comment.updateAuthor]),
|
|
41
|
+
...context.changelog.map((history) => history.author),
|
|
42
|
+
];
|
|
43
|
+
return candidates.find((account) => account?.accountId === accountId && account.displayName) ?? null;
|
|
44
|
+
}
|
|
25
45
|
/** A JQL string literal: the key is Jira's own, but a quote or backslash in it must never end the literal. */
|
|
26
46
|
function getJqlQuoted(text) {
|
|
27
47
|
return `"${text.replace(/["\\]/g, '\\$&')}"`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issueContext.js","sourceRoot":"","sources":["../../../src/connectors/jira/issueContext.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"issueContext.js","sourceRoot":"","sources":["../../../src/connectors/jira/issueContext.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,12 @@ import type { IssueDelta } from './issueDelta';
|
|
|
5
5
|
import type { JiraIssueTrigger } from './trigger';
|
|
6
6
|
/** How the issue reached the agent, in a few words — the header's `from:`. */
|
|
7
7
|
export declare function getJiraOriginDescription(issueKey: string, trigger: JiraIssueTrigger, statusName: string | undefined): string;
|
|
8
|
+
/** An open hand-over request (`trackerEvent`) of the conversation, as a mention note names it. */
|
|
9
|
+
export interface JiraOpenHandOver {
|
|
10
|
+
requestId: string;
|
|
11
|
+
/** Who handed the issue over, as the issue's own data names them; null when the request has no requester or no data names them. */
|
|
12
|
+
requester: JiraAccount | null;
|
|
13
|
+
}
|
|
8
14
|
/** What every prompt of a request says before the issue itself: who, which issue, where answers go. */
|
|
9
15
|
export interface JiraRequestPromptBase {
|
|
10
16
|
requestId: string;
|
|
@@ -15,10 +21,14 @@ export interface JiraRequestPromptBase {
|
|
|
15
21
|
issueUrl: string;
|
|
16
22
|
trigger: JiraIssueTrigger;
|
|
17
23
|
requester: JiraAccount | null;
|
|
18
|
-
/** The issue's assignee when the request is a mention (the
|
|
24
|
+
/** The issue's assignee when the request is a mention (the note names who has it). */
|
|
19
25
|
assignee?: JiraAccount | null;
|
|
20
|
-
/** A mention request: the issue is assigned to the AI account (its status is what keeps it from being handed over). */
|
|
26
|
+
/** A mention request: the issue is assigned to the AI account (with `isInWorkStatus` it is handed to it, else its status is what keeps it from being handed over). */
|
|
21
27
|
isAssignedToYou?: boolean;
|
|
28
|
+
/** A mention request: the issue's status is one the project hands work over in (`triggerStatusIds`, matched by id). */
|
|
29
|
+
isInWorkStatus?: boolean;
|
|
30
|
+
/** A mention request: the hand-over requests of the conversation that were open when the prompt was built — the work a mention must not stop. */
|
|
31
|
+
openHandOvers?: readonly JiraOpenHandOver[];
|
|
22
32
|
/** A mention request: the statuses the issue's project hands work over in (`jira.json` `triggerStatuses`), as configured. */
|
|
23
33
|
triggerStatusNames?: readonly string[];
|
|
24
34
|
/** The same requester's earlier requests of the issue this one replaced (R34); the header names them. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../../src/connectors/jira/prompt.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAqB,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AA+BlD,8EAA8E;AAC9E,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAY5H;
|
|
1
|
+
{"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../../src/connectors/jira/prompt.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAqB,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AA+BlD,8EAA8E;AAC9E,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAY5H;AA8ED,kGAAkG;AAClG,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,mIAAmI;IACnI,SAAS,EAAE,WAAW,GAAG,IAAI,CAAC;CAC/B;AAED,uGAAuG;AACvG,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,kFAAkF;IAClF,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,SAAS,EAAE,WAAW,GAAG,IAAI,CAAC;IAC9B,sFAAsF;IACtF,QAAQ,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC9B,sKAAsK;IACtK,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,uHAAuH;IACvH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iJAAiJ;IACjJ,aAAa,CAAC,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAC5C,6HAA6H;IAC7H,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,yGAAyG;IACzG,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,kIAAkI;IAClI,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,sBAAuB,SAAQ,qBAAqB;IACnE,oGAAoG;IACpG,MAAM,EAAE,SAAS,UAAU,EAAE,CAAC;IAC9B,qHAAqH;IACrH,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;CACpC;AAsBD,uHAAuH;AACvH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,sBAAsB,GAAG,MAAM,CAa5E;AAQD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,qBAAqB,GAAG;IAAE,KAAK,EAAE,UAAU,CAAA;CAAE,GAAG,MAAM,CAWjG"}
|