@urateam/core 0.1.30 → 0.1.32
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/dist/__tests__/agent-stream.test.js +35 -1
- package/dist/__tests__/agent-stream.test.js.map +1 -1
- package/dist/__tests__/bec-185-reproduce.test.d.ts +16 -0
- package/dist/__tests__/bec-185-reproduce.test.d.ts.map +1 -0
- package/dist/__tests__/bec-185-reproduce.test.js +16 -0
- package/dist/__tests__/bec-185-reproduce.test.js.map +1 -0
- package/dist/__tests__/control-signals.test.d.ts +2 -0
- package/dist/__tests__/control-signals.test.d.ts.map +1 -0
- package/dist/__tests__/control-signals.test.js +77 -0
- package/dist/__tests__/control-signals.test.js.map +1 -0
- package/dist/__tests__/gh-linear-sync.test.js +57 -2
- package/dist/__tests__/gh-linear-sync.test.js.map +1 -1
- package/dist/__tests__/openrouter-client.test.js +34 -0
- package/dist/__tests__/openrouter-client.test.js.map +1 -1
- package/dist/__tests__/pm-slack-interface.test.js +45 -0
- package/dist/__tests__/pm-slack-interface.test.js.map +1 -1
- package/dist/__tests__/pm-triage.test.js +101 -0
- package/dist/__tests__/pm-triage.test.js.map +1 -1
- package/dist/__tests__/util-linear.test.d.ts +10 -0
- package/dist/__tests__/util-linear.test.d.ts.map +1 -0
- package/dist/__tests__/util-linear.test.js +244 -0
- package/dist/__tests__/util-linear.test.js.map +1 -0
- package/dist/audit/events.d.ts +24 -0
- package/dist/audit/events.d.ts.map +1 -1
- package/dist/audit/events.js +32 -0
- package/dist/audit/events.js.map +1 -1
- package/dist/executor/agent-stream.d.ts +16 -0
- package/dist/executor/agent-stream.d.ts.map +1 -1
- package/dist/executor/agent-stream.js +43 -1
- package/dist/executor/agent-stream.js.map +1 -1
- package/dist/executor/executor.d.ts.map +1 -1
- package/dist/executor/executor.js +24 -5
- package/dist/executor/executor.js.map +1 -1
- package/dist/executor/review/openrouter-client.d.ts.map +1 -1
- package/dist/executor/review/openrouter-client.js +8 -0
- package/dist/executor/review/openrouter-client.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/notifier/linear.d.ts +0 -1
- package/dist/notifier/linear.d.ts.map +1 -1
- package/dist/notifier/linear.js +2 -5
- package/dist/notifier/linear.js.map +1 -1
- package/dist/pipeline/control-signals.d.ts +49 -0
- package/dist/pipeline/control-signals.d.ts.map +1 -0
- package/dist/pipeline/control-signals.js +93 -0
- package/dist/pipeline/control-signals.js.map +1 -0
- package/dist/pipeline/feedback-pipeline.d.ts +140 -0
- package/dist/pipeline/feedback-pipeline.d.ts.map +1 -0
- package/dist/pipeline/feedback-pipeline.js +427 -0
- package/dist/pipeline/feedback-pipeline.js.map +1 -0
- package/dist/pipeline/index.d.ts +1 -0
- package/dist/pipeline/index.d.ts.map +1 -1
- package/dist/pipeline/index.js +1 -0
- package/dist/pipeline/index.js.map +1 -1
- package/dist/pipeline/runner.d.ts +49 -33
- package/dist/pipeline/runner.d.ts.map +1 -1
- package/dist/pipeline/runner.js +136 -349
- package/dist/pipeline/runner.js.map +1 -1
- package/dist/pm/actions/promote.d.ts.map +1 -1
- package/dist/pm/actions/promote.js +15 -11
- package/dist/pm/actions/promote.js.map +1 -1
- package/dist/pm/actions/recover-stuck.d.ts.map +1 -1
- package/dist/pm/actions/recover-stuck.js +9 -5
- package/dist/pm/actions/recover-stuck.js.map +1 -1
- package/dist/pm/actions/triage.d.ts.map +1 -1
- package/dist/pm/actions/triage.js +67 -1
- package/dist/pm/actions/triage.js.map +1 -1
- package/dist/pm/linear-helpers.d.ts +10 -0
- package/dist/pm/linear-helpers.d.ts.map +1 -1
- package/dist/pm/linear-helpers.js +13 -21
- package/dist/pm/linear-helpers.js.map +1 -1
- package/dist/pm/pause-state.d.ts +29 -0
- package/dist/pm/pause-state.d.ts.map +1 -0
- package/dist/pm/pause-state.js +34 -0
- package/dist/pm/pause-state.js.map +1 -0
- package/dist/pm/slack-bulk.d.ts +34 -0
- package/dist/pm/slack-bulk.d.ts.map +1 -0
- package/dist/pm/slack-bulk.js +110 -0
- package/dist/pm/slack-bulk.js.map +1 -0
- package/dist/pm/slack-commands.d.ts +101 -0
- package/dist/pm/slack-commands.d.ts.map +1 -0
- package/dist/pm/slack-commands.js +309 -0
- package/dist/pm/slack-commands.js.map +1 -0
- package/dist/pm/slack-helpers.d.ts +10 -0
- package/dist/pm/slack-helpers.d.ts.map +1 -1
- package/dist/pm/slack-helpers.js +32 -0
- package/dist/pm/slack-helpers.js.map +1 -1
- package/dist/pm/slack-interface.d.ts +32 -58
- package/dist/pm/slack-interface.d.ts.map +1 -1
- package/dist/pm/slack-interface.js +150 -320
- package/dist/pm/slack-interface.js.map +1 -1
- package/dist/rbac/matrix.d.ts +2 -0
- package/dist/rbac/matrix.d.ts.map +1 -1
- package/dist/rbac/matrix.js +2 -0
- package/dist/rbac/matrix.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +7 -0
- package/dist/server.js.map +1 -1
- package/dist/sync/gh-linear-sync.d.ts +5 -1
- package/dist/sync/gh-linear-sync.d.ts.map +1 -1
- package/dist/sync/gh-linear-sync.js +104 -44
- package/dist/sync/gh-linear-sync.js.map +1 -1
- package/dist/types.d.ts +13 -4
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +6 -0
- package/dist/types.js.map +1 -1
- package/dist/util/linear.d.ts +70 -0
- package/dist/util/linear.d.ts.map +1 -0
- package/dist/util/linear.js +108 -0
- package/dist/util/linear.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,23 +1,10 @@
|
|
|
1
|
-
import type { PipelineConfig, RepoConfig, Notifier,
|
|
2
|
-
import type { Db } from "../db/client.js";
|
|
1
|
+
import type { PipelineConfig, RepoConfig, Notifier, PipelineRun, SanitizedIssue } from "../types.js";
|
|
2
|
+
import type { Db, AnyDb } from "../db/client.js";
|
|
3
|
+
import { type StopMode } from "./control-signals.js";
|
|
3
4
|
import { type GitHubConfig } from "../repo/github.js";
|
|
4
5
|
import { type GitLabConfig } from "../repo/gitlab.js";
|
|
5
6
|
import type { ReviewFeedbackComment } from "../webhook/github-handler.js";
|
|
6
|
-
|
|
7
|
-
* Map webhook-shaped `ReviewFeedbackComment[]` (the wire format we receive
|
|
8
|
-
* from GitHub) into the `ReviewFeedbackContext` that the implement template
|
|
9
|
-
* expects when handling PR review feedback.
|
|
10
|
-
*
|
|
11
|
-
* Routes the implement stage into the dedicated review-feedback prompt path
|
|
12
|
-
* (templates.ts:233-253) — "address review comments on existing branch, push
|
|
13
|
-
* to same branch, do NOT create a new PR" — instead of falling through to
|
|
14
|
-
* the standard "create branch and implement issue from scratch" prompt.
|
|
15
|
-
*
|
|
16
|
-
* `createdAt` is not captured by the GitHub webhook handler today, so the
|
|
17
|
-
* mapped comments use an empty string. The template only renders this for
|
|
18
|
-
* display; an empty value is harmless.
|
|
19
|
-
*/
|
|
20
|
-
export declare function buildReviewFeedbackContext(prUrl: string, prBranch: string, comments: ReviewFeedbackComment[]): ReviewFeedbackContext;
|
|
7
|
+
export { buildReviewFeedbackContext } from "./feedback-pipeline.js";
|
|
21
8
|
export interface PipelineRunnerConfig {
|
|
22
9
|
db: Db;
|
|
23
10
|
notifier: Notifier;
|
|
@@ -67,17 +54,57 @@ export declare class PipelineRunner {
|
|
|
67
54
|
resume(issueId: string): Promise<void>;
|
|
68
55
|
pause(issueId: string): Promise<void>;
|
|
69
56
|
abort(issueId: string): Promise<void>;
|
|
57
|
+
/**
|
|
58
|
+
* Operator-initiated stop for a single run, addressed by runId.
|
|
59
|
+
*
|
|
60
|
+
* - `"cancel"` aborts the active Agent SDK stream immediately. The current
|
|
61
|
+
* stage exits with `status: "cancelled"`; the pipeline marks the run
|
|
62
|
+
* `cancelled` and returns without creating a PR.
|
|
63
|
+
* - `"graceful"` lets the current stage complete, then skips remaining
|
|
64
|
+
* stages. Slower than cancel but leaves the worktree consistent.
|
|
65
|
+
*
|
|
66
|
+
* Idempotent. Returns the issueId resolved from the active map (or null if
|
|
67
|
+
* the runId isn't currently active). The caller is responsible for emitting
|
|
68
|
+
* the audit event since it knows the actor.
|
|
69
|
+
*/
|
|
70
|
+
requestStop(runId: string, mode: StopMode): {
|
|
71
|
+
issueId: string | null;
|
|
72
|
+
mode: StopMode;
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* Halt the whole container's autonomous work:
|
|
76
|
+
* 1. Pauses the PM Agent (BEC-170 mechanism) so no new runs get promoted.
|
|
77
|
+
* 2. Sends a `"cancel"` signal to every active pipeline + feedback run.
|
|
78
|
+
*
|
|
79
|
+
* Returns the set of run ids that were cancelled — the caller emits the
|
|
80
|
+
* audit event. Reversible: PM Agent can be unpaused via `/pm resume` and
|
|
81
|
+
* individual runs can be re-triggered via the retry button. Cancelled runs
|
|
82
|
+
* stay cancelled.
|
|
83
|
+
*/
|
|
84
|
+
haltAll(): {
|
|
85
|
+
cancelledRunIds: string[];
|
|
86
|
+
};
|
|
87
|
+
/**
|
|
88
|
+
* Mark a run as cancelled in the DB and clean up bookkeeping. Shared by the
|
|
89
|
+
* pre-stage graceful path and the mid-stream cancel path.
|
|
90
|
+
*
|
|
91
|
+
* For feedback-pipeline runs, pass `feedbackPrUrl` so the per-PR rate-limit
|
|
92
|
+
* slot is freed immediately rather than waiting on the queue's `finally`
|
|
93
|
+
* block. The queue's `finally` still fires (idempotent — Map.delete on a
|
|
94
|
+
* missing key is a no-op), this just shortens the window during which a new
|
|
95
|
+
* feedback comment on the same PR is rejected as "already active".
|
|
96
|
+
*/
|
|
97
|
+
markRunCancelled(db: AnyDb, runId: string, run: PipelineRun, mode: StopMode, feedbackPrUrl?: string): Promise<void>;
|
|
98
|
+
private markRunCancelledImpl;
|
|
70
99
|
isActive(issueId: string): boolean;
|
|
71
100
|
/** Returns true if a review-feedback run is already in progress for the given PR URL. */
|
|
72
101
|
isActiveFeedback(prUrl: string): boolean;
|
|
73
102
|
/**
|
|
74
103
|
* Start a review-feedback pipeline run triggered by a PR review comment.
|
|
75
104
|
*
|
|
76
|
-
*
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
* - Does NOT create a new PR — it pushes to the same branch.
|
|
80
|
-
* - Optionally re-requests review after pushing.
|
|
105
|
+
* Thin wrapper — all orchestration logic (rate-limiting, DB insert, queue
|
|
106
|
+
* management) and execution are delegated to feedback-pipeline.ts.
|
|
107
|
+
* See startFeedbackPipeline() for full documentation.
|
|
81
108
|
*/
|
|
82
109
|
startFeedback(params: {
|
|
83
110
|
issue: LinearIssue;
|
|
@@ -135,17 +162,6 @@ export declare class PipelineRunner {
|
|
|
135
162
|
* notification. Defaults to today (UTC).
|
|
136
163
|
*/
|
|
137
164
|
sendDailyTokenSummary(date?: Date): Promise<void>;
|
|
138
|
-
/**
|
|
139
|
-
* Execute a review-feedback pipeline run.
|
|
140
|
-
*
|
|
141
|
-
* Key differences from executePipeline():
|
|
142
|
-
* - Checks out the EXISTING PR branch (not a new one).
|
|
143
|
-
* - Skips triage, reproduce, await-approval stages.
|
|
144
|
-
* - Does NOT create a new PR — pushes to the same branch.
|
|
145
|
-
* - Optionally re-requests review via GitHub App after push.
|
|
146
|
-
* - Feedback comment context is injected into the implement stage prompt.
|
|
147
|
-
*/
|
|
148
|
-
private executeFeedbackPipeline;
|
|
149
165
|
private buildPipelineRun;
|
|
150
166
|
}
|
|
151
167
|
//# sourceMappingURL=runner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/pipeline/runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,UAAU,EAEV,QAAQ,
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/pipeline/runner.ts"],"names":[],"mappings":"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"}
|