kanbo-cli 0.1.0 → 0.1.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/README.md +1 -2
- package/dist/cli.cjs +96 -14
- package/dist/cli.cjs.map +1 -1
- package/dist/lib/{board-store-B16YarvX.d.mts → board-store-BfszzAJB.d.cts} +2 -2
- package/dist/lib/{board-store-BHHo_ZlR.d.cts → board-store-BvWn9xTB.d.mts} +2 -2
- package/dist/lib/index.cjs +2 -29
- package/dist/lib/index.cjs.map +1 -1
- package/dist/lib/index.d.cts +363 -363
- package/dist/lib/index.d.mts +363 -363
- package/dist/lib/index.mjs +1 -28
- package/dist/lib/index.mjs.map +1 -1
- package/dist/lib/{manifest-C0EcwwgO.mjs → manifest-DfOBqo-Q.mjs} +100 -17
- package/dist/lib/manifest-DfOBqo-Q.mjs.map +1 -0
- package/dist/lib/{manifest-CpZOcB_6.cjs → manifest-wdwFSquz.cjs} +104 -15
- package/dist/lib/manifest-wdwFSquz.cjs.map +1 -0
- package/dist/lib/mcp/index.cjs +1 -1
- package/dist/lib/mcp/index.d.cts +12 -12
- package/dist/lib/mcp/index.d.mts +12 -12
- package/dist/lib/mcp/index.mjs +1 -1
- package/dist/lib/postgres/index.d.cts +151 -151
- package/dist/lib/postgres/index.d.mts +151 -151
- package/dist/lib/{schema-fsHqNAip.d.cts → schema-D0MyXcej.d.cts} +41 -41
- package/dist/lib/{schema-fsHqNAip.d.mts → schema-D0MyXcej.d.mts} +41 -41
- package/dist/lib/sqlite/index.d.cts +12 -12
- package/dist/lib/sqlite/index.d.mts +12 -12
- package/dist/lib/sqlite/schema.d.cts +1 -1
- package/dist/lib/sqlite/schema.d.mts +1 -1
- package/dist/lib/{tool-names-9cmCn0gP.d.cts → tool-names-3q_GEZej.d.mts} +5 -5
- package/dist/lib/{tool-names-Dxg1UTUl.d.mts → tool-names-WfH4IURz.d.cts} +5 -5
- package/dist/page/board.js +1 -1
- package/package.json +4 -4
- package/dist/lib/manifest-C0EcwwgO.mjs.map +0 -1
- package/dist/lib/manifest-CpZOcB_6.cjs.map +0 -1
package/dist/lib/index.d.cts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { a as IssuePullRequest, c as IssueStatus, f as issueFieldChanges, i as IssueMilestone, l as KanbanMeta, n as IssueComment, o as IssueRelation, r as IssueFieldChange, s as IssueRun, t as Issue, v as issues } from "./schema-
|
|
2
|
-
import { a as BoardStore, c as IssueContextRefStore, d as IssuePullRequestStore, f as IssueRelationStore, g as KanbanMetaStore, h as IssueStatusStore, i as BoardRunProjectionScope, l as IssueFieldChangeStore, m as IssueRunStore, n as BoardLinkedPullRequest, o as BoardTransactionMode, p as IssueRowStore, r as BoardRunProjection, s as IssueCommentStore, t as BoardActiveRun, u as IssueMilestoneStore } from "./board-store-
|
|
3
|
-
import { a as ENTRY_RULES, c as EntryRuleFacts, d as evaluateEntryRules, f as readChecklist, i as KanboToolName, l as UNMET_ENTRY_RULE_REASONS, m as serializeEntryRules, n as KANBO_TOOL_NAMES, o as ENTRY_RULE_DESCRIPTIONS, p as readEntryRules, r as KanboToolCliEquivalent, s as EntryRule, t as KANBO_TOOL_CLI_EQUIVALENTS, u as UnmetEntryRule } from "./tool-names-
|
|
1
|
+
import { a as IssuePullRequest, c as IssueStatus, f as issueFieldChanges, i as IssueMilestone, l as KanbanMeta, n as IssueComment, o as IssueRelation, r as IssueFieldChange, s as IssueRun, t as Issue, v as issues } from "./schema-D0MyXcej.cjs";
|
|
2
|
+
import { a as BoardStore, c as IssueContextRefStore, d as IssuePullRequestStore, f as IssueRelationStore, g as KanbanMetaStore, h as IssueStatusStore, i as BoardRunProjectionScope, l as IssueFieldChangeStore, m as IssueRunStore, n as BoardLinkedPullRequest, o as BoardTransactionMode, p as IssueRowStore, r as BoardRunProjection, s as IssueCommentStore, t as BoardActiveRun, u as IssueMilestoneStore } from "./board-store-BfszzAJB.cjs";
|
|
3
|
+
import { a as ENTRY_RULES, c as EntryRuleFacts, d as evaluateEntryRules, f as readChecklist, i as KanboToolName, l as UNMET_ENTRY_RULE_REASONS, m as serializeEntryRules, n as KANBO_TOOL_NAMES, o as ENTRY_RULE_DESCRIPTIONS, p as readEntryRules, r as KanboToolCliEquivalent, s as EntryRule, t as KANBO_TOOL_CLI_EQUIVALENTS, u as UnmetEntryRule } from "./tool-names-WfH4IURz.cjs";
|
|
4
4
|
import { z } from "zod";
|
|
5
5
|
//#region src/cli/output.d.ts
|
|
6
6
|
/**
|
|
@@ -11,19 +11,19 @@ import { z } from "zod";
|
|
|
11
11
|
*/
|
|
12
12
|
declare const CLI_EXIT_CODES: readonly [{
|
|
13
13
|
readonly code: 0;
|
|
14
|
-
readonly meaning:
|
|
14
|
+
readonly meaning: 'Success.';
|
|
15
15
|
}, {
|
|
16
16
|
readonly code: 1;
|
|
17
|
-
readonly meaning:
|
|
17
|
+
readonly meaning: 'The command did not do what it was asked. See the message.';
|
|
18
18
|
}, {
|
|
19
19
|
readonly code: 2;
|
|
20
|
-
readonly meaning:
|
|
20
|
+
readonly meaning: 'Nothing to work on, or nothing told the command what to work on.';
|
|
21
21
|
}, {
|
|
22
22
|
readonly code: 3;
|
|
23
|
-
readonly meaning:
|
|
23
|
+
readonly meaning: 'The database is older than the board schema this build speaks.';
|
|
24
24
|
}, {
|
|
25
25
|
readonly code: 4;
|
|
26
|
-
readonly meaning:
|
|
26
|
+
readonly meaning: 'The command is a person\'s to run, and this shell is not a person.';
|
|
27
27
|
}];
|
|
28
28
|
//#endregion
|
|
29
29
|
//#region src/capabilities/manifest.d.ts
|
|
@@ -46,7 +46,7 @@ declare const CLI_EXIT_CODES: readonly [{
|
|
|
46
46
|
* (`kanbo://capabilities`, `kanbo://capabilities.md`).
|
|
47
47
|
*/
|
|
48
48
|
/** The manifest's own shape version, bumped when a field is added or removed — not the package's version. */
|
|
49
|
-
declare const CAPABILITIES_MANIFEST_VERSION = "3";
|
|
49
|
+
export declare const CAPABILITIES_MANIFEST_VERSION = "3";
|
|
50
50
|
/** The board's name and the build that is answering, as `kanbo mcp` itself reports them. */
|
|
51
51
|
interface KanboCapabilitiesPackage {
|
|
52
52
|
name: string;
|
|
@@ -126,15 +126,15 @@ interface KanboCapabilities {
|
|
|
126
126
|
limits: string[];
|
|
127
127
|
}
|
|
128
128
|
/** Everything this build of the board can tell an orchestrator about itself. */
|
|
129
|
-
declare function buildCapabilitiesManifest(): KanboCapabilities;
|
|
129
|
+
export declare function buildCapabilitiesManifest(): KanboCapabilities;
|
|
130
130
|
//#endregion
|
|
131
131
|
//#region src/capabilities/markdown.d.ts
|
|
132
132
|
/** The manifest, laid out under one heading per field — stable and diffable, never a snapshot to update by hand. */
|
|
133
|
-
declare function renderCapabilitiesMarkdown(manifest: KanboCapabilities): string;
|
|
133
|
+
export declare function renderCapabilitiesMarkdown(manifest: KanboCapabilities): string;
|
|
134
134
|
//#endregion
|
|
135
135
|
//#region src/cli/binding.d.ts
|
|
136
136
|
/** The binding file itself, relative to the project root. */
|
|
137
|
-
declare const BINDING_FILE_PATH: string;
|
|
137
|
+
export declare const BINDING_FILE_PATH: string;
|
|
138
138
|
declare const BindingSchema: z.ZodObject<{
|
|
139
139
|
schemaVersion: z.ZodLiteral<1>;
|
|
140
140
|
workspaceId: z.ZodString;
|
|
@@ -154,9 +154,9 @@ type KanboBinding = z.infer<typeof BindingSchema>;
|
|
|
154
154
|
* board, and a second `init` that quietly dropped the connection string would
|
|
155
155
|
* leave a project bound to nothing.
|
|
156
156
|
*/
|
|
157
|
-
declare function readProjectBinding(projectDir: string): KanboBinding | null;
|
|
157
|
+
export declare function readProjectBinding(projectDir: string): KanboBinding | null;
|
|
158
158
|
/** The binding in that exact file, or `null` when there is none to read. */
|
|
159
|
-
declare function readBinding(path: string): KanboBinding | null;
|
|
159
|
+
export declare function readBinding(path: string): KanboBinding | null;
|
|
160
160
|
/**
|
|
161
161
|
* Bind the project folder to a board.
|
|
162
162
|
*
|
|
@@ -174,7 +174,7 @@ declare function readBinding(path: string): KanboBinding | null;
|
|
|
174
174
|
* there, which is the right nothing: no permission to narrow, and no failure
|
|
175
175
|
* to handle.
|
|
176
176
|
*/
|
|
177
|
-
declare function writeBinding(projectDir: string, binding: KanboBinding): string;
|
|
177
|
+
export declare function writeBinding(projectDir: string, binding: KanboBinding): string;
|
|
178
178
|
/**
|
|
179
179
|
* Make sure `.kanbo/.gitignore` also covers a board file of this project's
|
|
180
180
|
* own — `kanbo init --file` calls this once, right after creating it — and
|
|
@@ -187,7 +187,7 @@ declare function writeBinding(projectDir: string, binding: KanboBinding): string
|
|
|
187
187
|
* chosen elsewhere in the project gets no line here, the same way the user's
|
|
188
188
|
* own `.gitignore` is never touched at all.
|
|
189
189
|
*/
|
|
190
|
-
declare function ignoreBoardFile(projectDir: string, absoluteDbPath: string): void;
|
|
190
|
+
export declare function ignoreBoardFile(projectDir: string, absoluteDbPath: string): void;
|
|
191
191
|
//#endregion
|
|
192
192
|
//#region src/default-board-file-path.d.ts
|
|
193
193
|
/**
|
|
@@ -195,7 +195,7 @@ declare function ignoreBoardFile(projectDir: string, absoluteDbPath: string): vo
|
|
|
195
195
|
* `kanbo init --file` writes it here, and an app that attaches a project's
|
|
196
196
|
* board file can import the same constant rather than spelling it again.
|
|
197
197
|
*/
|
|
198
|
-
declare const DEFAULT_BOARD_FILE_PATH: string;
|
|
198
|
+
export declare const DEFAULT_BOARD_FILE_PATH: string;
|
|
199
199
|
//#endregion
|
|
200
200
|
//#region src/domain/issue-view.d.ts
|
|
201
201
|
/** An issue row with its `labels` column decoded from JSON. */
|
|
@@ -208,13 +208,13 @@ type IssueView = Omit<Issue, 'labels'> & {
|
|
|
208
208
|
* `system.*` markers that `normalizeCommentAuthorKind` folds away.
|
|
209
209
|
*/
|
|
210
210
|
type IssueActorKind = IssueFieldChange['actorKind'];
|
|
211
|
-
declare function toIssueView(issue: Issue): IssueView;
|
|
211
|
+
export declare function toIssueView(issue: Issue): IssueView;
|
|
212
212
|
/**
|
|
213
213
|
* Fold a comment's author kind onto the actor kinds a reader renders: only a
|
|
214
214
|
* person, an agent and a provider target speak for themselves, so every
|
|
215
215
|
* `system.*` marker — whatever it marks — is the board speaking as `system`.
|
|
216
216
|
*/
|
|
217
|
-
declare function normalizeCommentAuthorKind(authorKind: IssueComment['authorKind']): IssueActorKind;
|
|
217
|
+
export declare function normalizeCommentAuthorKind(authorKind: IssueComment['authorKind']): IssueActorKind;
|
|
218
218
|
/** Who a row is filed under, as the row stores it — what a host resolves into a name to show. */
|
|
219
219
|
interface IssueActorReference {
|
|
220
220
|
kind: IssueActorKind;
|
|
@@ -238,7 +238,7 @@ interface IssueWriterProvenance {
|
|
|
238
238
|
* the `system` kind first; this answers the rest of the question, and says in
|
|
239
239
|
* its type that such a writer has a name to show.
|
|
240
240
|
*/
|
|
241
|
-
declare function isOutsideWriter(provenance: IssueWriterProvenance): provenance is IssueWriterProvenance & {
|
|
241
|
+
export declare function isOutsideWriter(provenance: IssueWriterProvenance): provenance is IssueWriterProvenance & {
|
|
242
242
|
authorId: string;
|
|
243
243
|
};
|
|
244
244
|
//#endregion
|
|
@@ -259,19 +259,19 @@ interface BoardWorkspaceIdentity {
|
|
|
259
259
|
name: string;
|
|
260
260
|
}
|
|
261
261
|
/** The three-letter stem every issue key in the workspace starts with. */
|
|
262
|
-
declare function readIssuePrefix(workspace: BoardWorkspaceIdentity): string;
|
|
263
|
-
declare function formatIssueId(prefix: string, number: number): string;
|
|
262
|
+
export declare function readIssuePrefix(workspace: BoardWorkspaceIdentity): string;
|
|
263
|
+
export declare function formatIssueId(prefix: string, number: number): string;
|
|
264
264
|
/**
|
|
265
265
|
* The key and number the next issue of this workspace gets. The loop skips keys
|
|
266
266
|
* an earlier prefix already took, so a renamed workspace never collides with its
|
|
267
267
|
* own history.
|
|
268
268
|
*/
|
|
269
|
-
declare function nextIssueIdentity(workspace: BoardWorkspaceIdentity, store: BoardStore): Promise<{
|
|
269
|
+
export declare function nextIssueIdentity(workspace: BoardWorkspaceIdentity, store: BoardStore): Promise<{
|
|
270
270
|
id: string;
|
|
271
271
|
number: number;
|
|
272
272
|
}>;
|
|
273
|
-
declare function nextIssueNumber(workspaceId: string, tx: BoardStore): Promise<number>;
|
|
274
|
-
declare function nextIssueOrder(workspaceId: string, tx: BoardStore): Promise<number>;
|
|
273
|
+
export declare function nextIssueNumber(workspaceId: string, tx: BoardStore): Promise<number>;
|
|
274
|
+
export declare function nextIssueOrder(workspaceId: string, tx: BoardStore): Promise<number>;
|
|
275
275
|
//#endregion
|
|
276
276
|
//#region src/domain/activity-types.d.ts
|
|
277
277
|
type IssueActivityValueToken = 'changed' | 'current-user' | 'empty' | 'no-due-date' | 'no-labels' | 'no-milestone' | 'no-parent' | 'no-status' | 'priority-high' | 'priority-low' | 'priority-medium' | 'priority-none' | 'priority-urgent' | 'unassigned' | 'unknown-issue' | 'unknown-milestone' | 'unknown-status' | 'unknown-user';
|
|
@@ -337,7 +337,7 @@ interface IssueActivityLookup {
|
|
|
337
337
|
* load this package keeps the same rule on its own, tested with the same
|
|
338
338
|
* examples.
|
|
339
339
|
*/
|
|
340
|
-
declare function cardDisplayTitle(card: {
|
|
340
|
+
export declare function cardDisplayTitle(card: {
|
|
341
341
|
id: string;
|
|
342
342
|
title: string;
|
|
343
343
|
description?: string | null;
|
|
@@ -367,7 +367,7 @@ declare function cardDisplayTitle(card: {
|
|
|
367
367
|
* parses, as a `user:` URL whose whole password is in the path, and printing it
|
|
368
368
|
* back would say the secret out loud.
|
|
369
369
|
*/
|
|
370
|
-
declare function maskDatabaseUrl(url: string): string;
|
|
370
|
+
export declare function maskDatabaseUrl(url: string): string;
|
|
371
371
|
/**
|
|
372
372
|
* Every connection string inside a line of text, masked.
|
|
373
373
|
*
|
|
@@ -375,7 +375,7 @@ declare function maskDatabaseUrl(url: string): string;
|
|
|
375
375
|
* the whole connection string in the middle of a sentence, and it reaches the
|
|
376
376
|
* same terminal, or the same agent, as everything else.
|
|
377
377
|
*/
|
|
378
|
-
declare function maskDatabaseUrls(text: string): string;
|
|
378
|
+
export declare function maskDatabaseUrls(text: string): string;
|
|
379
379
|
//#endregion
|
|
380
380
|
//#region src/domain/errors.d.ts
|
|
381
381
|
/**
|
|
@@ -398,7 +398,7 @@ declare function maskDatabaseUrls(text: string): string;
|
|
|
398
398
|
*/
|
|
399
399
|
type BoardErrorCode = 'board_approval_requires_user' | 'board_column_rules_requires_user' | 'board_column_rules_unmet' | 'board_copy_conflict' | 'board_entry_rule_invalid' | 'board_execution_mode_locked' | 'board_mixed_workspaces' | 'board_pull_request_invalid' | 'board_pull_request_not_found' | 'board_pull_request_not_yours' | 'board_return_no_previous_column' | 'board_return_requires_user' | 'board_run_already_finished' | 'board_run_not_found' | 'board_run_session_ref_conflict' | 'board_run_session_ref_invalid' | 'board_run_session_ref_requires_user' | 'board_schema_outdated' | 'board_sprint_carry_invalid' | 'board_sprint_close_requires_user' | 'board_sprint_dates_invalid' | 'board_storage_not_configured' | 'board_storage_not_empty' | 'board_storage_not_prepared' | 'board_storage_unavailable' | 'issue_comment_delete_requires_user' | 'issue_comment_not_found' | 'issue_context_ref_invalid_index' | 'issue_milestone_not_found' | 'issue_not_found' | 'issue_parent_not_found' | 'issue_parent_self_reference' | 'issue_relation_not_found' | 'issue_relation_self_reference' | 'issue_status_name_empty' | 'issue_status_not_found' | 'issue_status_reference_conflict' | 'issue_workspace_not_found';
|
|
400
400
|
/** A board rule the caller broke, carrying the offending values in `details`. */
|
|
401
|
-
declare class BoardError extends Error {
|
|
401
|
+
export declare class BoardError extends Error {
|
|
402
402
|
readonly code: BoardErrorCode;
|
|
403
403
|
readonly details?: Record<string, unknown>;
|
|
404
404
|
constructor(code: BoardErrorCode, details?: Record<string, unknown>);
|
|
@@ -429,9 +429,9 @@ interface ExternalSessionRef {
|
|
|
429
429
|
* is well formed calls this and catches the throw, the same as
|
|
430
430
|
* `parsePullRequestRef`.
|
|
431
431
|
*/
|
|
432
|
-
declare function parseExternalSessionRef(input: string): ExternalSessionRef;
|
|
432
|
+
export declare function parseExternalSessionRef(input: string): ExternalSessionRef;
|
|
433
433
|
/** The stored and printed form: `claude:<id>` or `codex:<id>`. */
|
|
434
|
-
declare function formatExternalSessionRef(ref: ExternalSessionRef): string;
|
|
434
|
+
export declare function formatExternalSessionRef(ref: ExternalSessionRef): string;
|
|
435
435
|
//#endregion
|
|
436
436
|
//#region src/domain/field-changes.d.ts
|
|
437
437
|
/**
|
|
@@ -443,7 +443,7 @@ declare function formatExternalSessionRef(ref: ExternalSessionRef): string;
|
|
|
443
443
|
* `system.approved` / `system.returned` comments around it, so a row saying the
|
|
444
444
|
* same thing a third time would only crowd the history.
|
|
445
445
|
*/
|
|
446
|
-
declare const TRACKED_FIELDS: readonly [
|
|
446
|
+
export declare const TRACKED_FIELDS: readonly ['workspaceId', 'title', 'description', 'priority', 'labels', 'milestoneId', 'parentIssueId', 'statusId', 'assigneeKind', 'assigneeId', 'dueDate', 'delegateAgentId', 'delegateProviderTargetId', 'contextRefs', 'executionMode', 'order'];
|
|
447
447
|
/** Who an issue edit is attributed to, with the chat session it came from. */
|
|
448
448
|
interface IssueMutationActor {
|
|
449
449
|
kind: IssueActorKind;
|
|
@@ -456,10 +456,10 @@ interface IssueMutationActor {
|
|
|
456
456
|
* comes back, so the diff stays a pure function of the row, the patch, the
|
|
457
457
|
* actor and the clock.
|
|
458
458
|
*/
|
|
459
|
-
declare function diffFieldChanges(before: Issue, updates: Partial<typeof issues.$inferInsert>, actor: IssueMutationActor, now: number): Array<typeof issueFieldChanges.$inferInsert>;
|
|
459
|
+
export declare function diffFieldChanges(before: Issue, updates: Partial<typeof issues.$inferInsert>, actor: IssueMutationActor, now: number): Array<typeof issueFieldChanges.$inferInsert>;
|
|
460
460
|
//#endregion
|
|
461
461
|
//#region src/domain/issue-activity.d.ts
|
|
462
|
-
declare function activityKindOrder(kind: IssueActivityItemView['kind']): number;
|
|
462
|
+
export declare function activityKindOrder(kind: IssueActivityItemView['kind']): number;
|
|
463
463
|
/**
|
|
464
464
|
* The badge a system comment renders under. Delegation owns two of its own; the
|
|
465
465
|
* rest of the `system.*` markers read as plain system comments until they earn
|
|
@@ -469,20 +469,20 @@ declare function activityKindOrder(kind: IssueActivityItemView['kind']): number;
|
|
|
469
469
|
* the command line, an agent someone ran themselves — is stored as `system` too, and what it wrote is an ordinary comment
|
|
470
470
|
* rather than a line about the board — `isOutsideWriter` is that question.
|
|
471
471
|
*/
|
|
472
|
-
declare function readSystemCommentKind(authorKind: IssueComment['authorKind'], provenance: IssueWriterProvenance): IssueActivityCommentView['systemKind'];
|
|
472
|
+
export declare function readSystemCommentKind(authorKind: IssueComment['authorKind'], provenance: IssueWriterProvenance): IssueActivityCommentView['systemKind'];
|
|
473
473
|
/**
|
|
474
474
|
* Who a comment is shown under. A `system.*` marker is the board's own line
|
|
475
475
|
* about what happened — a run launched, a person's decision — so the id it
|
|
476
476
|
* carries names whoever caused the line, never its author. Only a plain
|
|
477
477
|
* `system` row can name a writer.
|
|
478
478
|
*/
|
|
479
|
-
declare function commentAuthorReference(comment: IssueComment): IssueActorReference;
|
|
480
|
-
declare function formatActivityIssueReference(value: string | null, lookup: IssueActivityLookup): IssueActivityValueView;
|
|
481
|
-
declare function formatPlainActivityValue(value: string | null): IssueActivityValueView;
|
|
482
|
-
declare function parseActivityStringArray(value: string | null): string[] | null;
|
|
483
|
-
declare function isEmptyActivityValue(value: string | null): value is null | '' | '[]';
|
|
484
|
-
declare function activityText(text: string | null): IssueActivityValueView | null;
|
|
485
|
-
declare function activityToken(token: IssueActivityValueToken): IssueActivityValueView;
|
|
479
|
+
export declare function commentAuthorReference(comment: IssueComment): IssueActorReference;
|
|
480
|
+
export declare function formatActivityIssueReference(value: string | null, lookup: IssueActivityLookup): IssueActivityValueView;
|
|
481
|
+
export declare function formatPlainActivityValue(value: string | null): IssueActivityValueView;
|
|
482
|
+
export declare function parseActivityStringArray(value: string | null): string[] | null;
|
|
483
|
+
export declare function isEmptyActivityValue(value: string | null): value is null | '' | '[]';
|
|
484
|
+
export declare function activityText(text: string | null): IssueActivityValueView | null;
|
|
485
|
+
export declare function activityToken(token: IssueActivityValueToken): IssueActivityValueView;
|
|
486
486
|
//#endregion
|
|
487
487
|
//#region src/domain/pull-request-fact-keys.d.ts
|
|
488
488
|
/**
|
|
@@ -504,7 +504,7 @@ interface PullRequestFactKeys {
|
|
|
504
504
|
/** What every CI verdict key of this pull request starts with; the head sha and `:green` or `:red` follow. */
|
|
505
505
|
ciPrefix: string;
|
|
506
506
|
}
|
|
507
|
-
declare function pullRequestFactKeys({ owner, repo, number }: {
|
|
507
|
+
export declare function pullRequestFactKeys({ owner, repo, number }: {
|
|
508
508
|
owner: string;
|
|
509
509
|
repo: string;
|
|
510
510
|
number: number;
|
|
@@ -515,43 +515,43 @@ declare function pullRequestFactKeys({ owner, repo, number }: {
|
|
|
515
515
|
* The columns a workspace gets the first time someone opens its board, in board
|
|
516
516
|
* order. A workspace that already holds statuses is never re-seeded.
|
|
517
517
|
*/
|
|
518
|
-
declare const DEFAULT_STATUSES: readonly [{
|
|
519
|
-
readonly name:
|
|
520
|
-
readonly description:
|
|
521
|
-
readonly color:
|
|
522
|
-
readonly category:
|
|
518
|
+
export declare const DEFAULT_STATUSES: readonly [{
|
|
519
|
+
readonly name: 'Backlog';
|
|
520
|
+
readonly description: 'Idea captured, not ready to work on';
|
|
521
|
+
readonly color: '#6b7280';
|
|
522
|
+
readonly category: 'backlog';
|
|
523
523
|
}, {
|
|
524
|
-
readonly name:
|
|
525
|
-
readonly description:
|
|
526
|
-
readonly color:
|
|
527
|
-
readonly category:
|
|
524
|
+
readonly name: 'To Do';
|
|
525
|
+
readonly description: 'Spelled out, ready to launch';
|
|
526
|
+
readonly color: '#9ca3af';
|
|
527
|
+
readonly category: 'unstarted';
|
|
528
528
|
}, {
|
|
529
|
-
readonly name:
|
|
530
|
-
readonly description:
|
|
531
|
-
readonly color:
|
|
532
|
-
readonly category:
|
|
529
|
+
readonly name: 'In Progress';
|
|
530
|
+
readonly description: 'The orchestrator and its agents are working';
|
|
531
|
+
readonly color: '#f59e0b';
|
|
532
|
+
readonly category: 'started';
|
|
533
533
|
}, {
|
|
534
|
-
readonly name:
|
|
535
|
-
readonly description:
|
|
536
|
-
readonly color:
|
|
537
|
-
readonly category:
|
|
534
|
+
readonly name: 'In Review';
|
|
535
|
+
readonly description: 'Work done; being checked or waiting for you';
|
|
536
|
+
readonly color: '#8b5cf6';
|
|
537
|
+
readonly category: 'started';
|
|
538
538
|
}, {
|
|
539
|
-
readonly name:
|
|
540
|
-
readonly description:
|
|
541
|
-
readonly color:
|
|
542
|
-
readonly category:
|
|
539
|
+
readonly name: 'Done';
|
|
540
|
+
readonly description: 'Accepted';
|
|
541
|
+
readonly color: '#22c55e';
|
|
542
|
+
readonly category: 'completed';
|
|
543
543
|
}, {
|
|
544
|
-
readonly name:
|
|
545
|
-
readonly description:
|
|
546
|
-
readonly color:
|
|
547
|
-
readonly category:
|
|
544
|
+
readonly name: 'Canceled';
|
|
545
|
+
readonly description: 'Canceled';
|
|
546
|
+
readonly color: '#6b7280';
|
|
547
|
+
readonly category: 'canceled';
|
|
548
548
|
}];
|
|
549
549
|
/**
|
|
550
550
|
* The slug two status names have in common when they mean the same column:
|
|
551
551
|
* case and the run of spaces or dashes between words are ignored, so `In
|
|
552
552
|
* Progress`, `in-progress` and `IN_PROGRESS` all resolve to one status.
|
|
553
553
|
*/
|
|
554
|
-
declare function normalizeStatusName(value: string): string;
|
|
554
|
+
export declare function normalizeStatusName(value: string): string;
|
|
555
555
|
//#endregion
|
|
556
556
|
//#region src/domain/time.d.ts
|
|
557
557
|
/**
|
|
@@ -559,7 +559,7 @@ declare function normalizeStatusName(value: string): string;
|
|
|
559
559
|
*
|
|
560
560
|
* The package carries its own clock, so it depends on nothing of its host's.
|
|
561
561
|
*/
|
|
562
|
-
declare function currentUnixSeconds(): number;
|
|
562
|
+
export declare function currentUnixSeconds(): number;
|
|
563
563
|
//#endregion
|
|
564
564
|
//#region src/ops/change-seq.d.ts
|
|
565
565
|
/**
|
|
@@ -595,12 +595,12 @@ interface BoardWriteScope<TStore extends BoardStore = BoardStore> {
|
|
|
595
595
|
* the only database-touching async chain in flight, and inside it only
|
|
596
596
|
* operations that resolve without I/O may be awaited.
|
|
597
597
|
*/
|
|
598
|
-
declare function runBoardWrite<TStore extends BoardStore, TResult>(store: TStore, fn: (scope: BoardWriteScope<TStore>) => Promise<TResult>, scope?: BoardWriteScope<TStore>): Promise<TResult>;
|
|
598
|
+
export declare function runBoardWrite<TStore extends BoardStore, TResult>(store: TStore, fn: (scope: BoardWriteScope<TStore>) => Promise<TResult>, scope?: BoardWriteScope<TStore>): Promise<TResult>;
|
|
599
599
|
/**
|
|
600
600
|
* How many times the board has changed. A reader that holds a number and reads
|
|
601
601
|
* the same one back is looking at the board it already has.
|
|
602
602
|
*/
|
|
603
|
-
declare function readChangeSeq(store: BoardStore): Promise<number>;
|
|
603
|
+
export declare function readChangeSeq(store: BoardStore): Promise<number>;
|
|
604
604
|
//#endregion
|
|
605
605
|
//#region src/ops/types.d.ts
|
|
606
606
|
/**
|
|
@@ -634,7 +634,7 @@ interface BoardActor {
|
|
|
634
634
|
* depends on the agent having written a status line since it started, so a line
|
|
635
635
|
* the board wrote itself must never be filed under the agent that was running.
|
|
636
636
|
*/
|
|
637
|
-
declare const BOARD_ACTOR: BoardActor;
|
|
637
|
+
export declare const BOARD_ACTOR: BoardActor;
|
|
638
638
|
/** A comment as the board writes it, before the row exists. */
|
|
639
639
|
interface BoardCommentInput {
|
|
640
640
|
issueId: string;
|
|
@@ -935,237 +935,237 @@ interface BoardColumnPatch {
|
|
|
935
935
|
* scope of a write already in progress joins it, so a caller composing several
|
|
936
936
|
* operations gets one transaction and one board version bump.
|
|
937
937
|
*/
|
|
938
|
-
declare function createBoardOps<TStore extends BoardStore>(store: TStore): {
|
|
938
|
+
export declare function createBoardOps<TStore extends BoardStore>(store: TStore): {
|
|
939
939
|
createCard: (input: CreateCardInput, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<BoardCardWrite>;
|
|
940
|
-
createSubCard: (parentIssueId: string, input: Omit<CreateCardInput,
|
|
940
|
+
createSubCard: (parentIssueId: string, input: Omit<CreateCardInput, 'parentIssueId'>, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<BoardCardWrite>;
|
|
941
941
|
updateCard: (issueId: string, input: UpdateCardInput, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<BoardCardWrite>;
|
|
942
942
|
moveCard: (issueId: string, nameOrId: string, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<BoardCardWrite>;
|
|
943
943
|
addComment: (input: AddCommentInput, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
944
|
-
id: string;
|
|
945
|
-
createdAt: number;
|
|
946
|
-
sourceChatSessionId: string | null;
|
|
947
|
-
issueId: string;
|
|
948
|
-
content: string;
|
|
949
|
-
authorKind: "user" | "agent" | "system" | "provider-target" | "system.delegated" | "system.undelegated" | "system.run" | "system.approved" | "system.returned" | "system.pr";
|
|
950
|
-
authorId: string | null;
|
|
951
944
|
agentActivityId: string | null;
|
|
945
|
+
authorId: string | null;
|
|
946
|
+
authorKind: "agent" | "provider-target" | "system" | "system.approved" | "system.delegated" | "system.pr" | "system.returned" | "system.run" | "system.undelegated" | "user";
|
|
947
|
+
content: string;
|
|
948
|
+
createdAt: number;
|
|
952
949
|
dedupeKey: string | null;
|
|
953
|
-
}>;
|
|
954
|
-
createCommentOnce: (input: CreateCommentOnceInput, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
955
950
|
id: string;
|
|
956
|
-
createdAt: number;
|
|
957
|
-
sourceChatSessionId: string | null;
|
|
958
951
|
issueId: string;
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
952
|
+
sourceChatSessionId: string | null;
|
|
953
|
+
}>;
|
|
954
|
+
createCommentOnce: (input: CreateCommentOnceInput, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
962
955
|
agentActivityId: string | null;
|
|
956
|
+
authorId: string | null;
|
|
957
|
+
authorKind: "agent" | "provider-target" | "system" | "system.approved" | "system.delegated" | "system.pr" | "system.returned" | "system.run" | "system.undelegated" | "user";
|
|
958
|
+
content: string;
|
|
959
|
+
createdAt: number;
|
|
963
960
|
dedupeKey: string | null;
|
|
964
|
-
}>;
|
|
965
|
-
listComments: (issueId: string) => Promise<{
|
|
966
961
|
id: string;
|
|
967
|
-
createdAt: number;
|
|
968
|
-
sourceChatSessionId: string | null;
|
|
969
962
|
issueId: string;
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
963
|
+
sourceChatSessionId: string | null;
|
|
964
|
+
}>;
|
|
965
|
+
listComments: (issueId: string) => Promise<{
|
|
973
966
|
agentActivityId: string | null;
|
|
967
|
+
authorId: string | null;
|
|
968
|
+
authorKind: "agent" | "provider-target" | "system" | "system.approved" | "system.delegated" | "system.pr" | "system.returned" | "system.run" | "system.undelegated" | "user";
|
|
969
|
+
content: string;
|
|
970
|
+
createdAt: number;
|
|
974
971
|
dedupeKey: string | null;
|
|
972
|
+
id: string;
|
|
973
|
+
issueId: string;
|
|
974
|
+
sourceChatSessionId: string | null;
|
|
975
975
|
}[]>;
|
|
976
976
|
deleteComment: (commentId: string, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<void>;
|
|
977
977
|
deleteCard: (issueId: string, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
978
978
|
runIds: string[];
|
|
979
979
|
}>;
|
|
980
980
|
searchCards: (query: string, limit: number) => Promise<{
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
description: string | null;
|
|
985
|
-
order: number;
|
|
981
|
+
assigneeId: string | null;
|
|
982
|
+
assigneeKind: string | null;
|
|
983
|
+
contextRefs: string;
|
|
986
984
|
createdAt: number;
|
|
987
|
-
|
|
985
|
+
createdById: string;
|
|
986
|
+
createdByKind: "agent" | "provider-target" | "system" | "user";
|
|
987
|
+
delegateAgentId: string | null;
|
|
988
|
+
delegateProviderTargetId: string | null;
|
|
989
|
+
description: string | null;
|
|
988
990
|
dueDate: number | null;
|
|
989
|
-
|
|
990
|
-
|
|
991
|
+
executionMode: "main" | "worktree";
|
|
992
|
+
id: string;
|
|
993
|
+
labels: string;
|
|
991
994
|
milestoneId: string | null;
|
|
995
|
+
number: number;
|
|
996
|
+
order: number;
|
|
992
997
|
parentIssueId: string | null;
|
|
993
|
-
priority: "
|
|
994
|
-
labels: string;
|
|
995
|
-
assigneeKind: string | null;
|
|
996
|
-
assigneeId: string | null;
|
|
997
|
-
createdByKind: "user" | "agent" | "system" | "provider-target";
|
|
998
|
-
createdById: string;
|
|
998
|
+
priority: "high" | "low" | "medium" | "none" | "urgent";
|
|
999
999
|
sourceChatSessionId: string | null;
|
|
1000
|
-
|
|
1001
|
-
delegateProviderTargetId: string | null;
|
|
1002
|
-
contextRefs: string;
|
|
1000
|
+
statusId: string | null;
|
|
1003
1001
|
statusLine: string | null;
|
|
1002
|
+
title: string;
|
|
1003
|
+
updatedAt: number;
|
|
1004
1004
|
waitingFor: "human" | null;
|
|
1005
|
-
|
|
1005
|
+
workspaceId: string;
|
|
1006
1006
|
}[]>;
|
|
1007
1007
|
bulkUpdateCards: (issueIds: string[], input: BulkUpdateCardsInput, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<BulkUpdateCardsResult>;
|
|
1008
1008
|
reorderCards: (workspaceId: string, orderedIds: string[], scope?: BoardWriteScope<TStore>) => Promise<void>;
|
|
1009
1009
|
migrateCards: (input: MigrateCardsInput) => Promise<MigrateCardsResult>;
|
|
1010
1010
|
addContextRef: (issueId: string, ref: string, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
description: string | null;
|
|
1015
|
-
order: number;
|
|
1011
|
+
assigneeId: string | null;
|
|
1012
|
+
assigneeKind: string | null;
|
|
1013
|
+
contextRefs: string;
|
|
1016
1014
|
createdAt: number;
|
|
1017
|
-
|
|
1015
|
+
createdById: string;
|
|
1016
|
+
createdByKind: "agent" | "provider-target" | "system" | "user";
|
|
1017
|
+
delegateAgentId: string | null;
|
|
1018
|
+
delegateProviderTargetId: string | null;
|
|
1019
|
+
description: string | null;
|
|
1018
1020
|
dueDate: number | null;
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
+
executionMode: "main" | "worktree";
|
|
1022
|
+
id: string;
|
|
1023
|
+
labels: string;
|
|
1021
1024
|
milestoneId: string | null;
|
|
1025
|
+
number: number;
|
|
1026
|
+
order: number;
|
|
1022
1027
|
parentIssueId: string | null;
|
|
1023
|
-
priority: "
|
|
1024
|
-
labels: string;
|
|
1025
|
-
assigneeKind: string | null;
|
|
1026
|
-
assigneeId: string | null;
|
|
1027
|
-
createdByKind: "user" | "agent" | "system" | "provider-target";
|
|
1028
|
-
createdById: string;
|
|
1028
|
+
priority: "high" | "low" | "medium" | "none" | "urgent";
|
|
1029
1029
|
sourceChatSessionId: string | null;
|
|
1030
|
-
|
|
1031
|
-
delegateProviderTargetId: string | null;
|
|
1032
|
-
contextRefs: string;
|
|
1030
|
+
statusId: string | null;
|
|
1033
1031
|
statusLine: string | null;
|
|
1032
|
+
title: string;
|
|
1033
|
+
updatedAt: number;
|
|
1034
1034
|
waitingFor: "human" | null;
|
|
1035
|
-
|
|
1035
|
+
workspaceId: string;
|
|
1036
1036
|
}>;
|
|
1037
1037
|
removeContextRef: (issueId: string, index: number, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
description: string | null;
|
|
1042
|
-
order: number;
|
|
1038
|
+
assigneeId: string | null;
|
|
1039
|
+
assigneeKind: string | null;
|
|
1040
|
+
contextRefs: string;
|
|
1043
1041
|
createdAt: number;
|
|
1044
|
-
|
|
1042
|
+
createdById: string;
|
|
1043
|
+
createdByKind: "agent" | "provider-target" | "system" | "user";
|
|
1044
|
+
delegateAgentId: string | null;
|
|
1045
|
+
delegateProviderTargetId: string | null;
|
|
1046
|
+
description: string | null;
|
|
1045
1047
|
dueDate: number | null;
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
+
executionMode: "main" | "worktree";
|
|
1049
|
+
id: string;
|
|
1050
|
+
labels: string;
|
|
1048
1051
|
milestoneId: string | null;
|
|
1052
|
+
number: number;
|
|
1053
|
+
order: number;
|
|
1049
1054
|
parentIssueId: string | null;
|
|
1050
|
-
priority: "
|
|
1051
|
-
labels: string;
|
|
1052
|
-
assigneeKind: string | null;
|
|
1053
|
-
assigneeId: string | null;
|
|
1054
|
-
createdByKind: "user" | "agent" | "system" | "provider-target";
|
|
1055
|
-
createdById: string;
|
|
1055
|
+
priority: "high" | "low" | "medium" | "none" | "urgent";
|
|
1056
1056
|
sourceChatSessionId: string | null;
|
|
1057
|
-
|
|
1058
|
-
delegateProviderTargetId: string | null;
|
|
1059
|
-
contextRefs: string;
|
|
1057
|
+
statusId: string | null;
|
|
1060
1058
|
statusLine: string | null;
|
|
1059
|
+
title: string;
|
|
1060
|
+
updatedAt: number;
|
|
1061
1061
|
waitingFor: "human" | null;
|
|
1062
|
-
|
|
1062
|
+
workspaceId: string;
|
|
1063
1063
|
}>;
|
|
1064
1064
|
listRelations: (issueId: string) => Promise<IssueRelationView[]>;
|
|
1065
1065
|
createRelation: (input: CreateRelationInput, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1066
|
-
id: string;
|
|
1067
1066
|
createdAt: number;
|
|
1067
|
+
id: string;
|
|
1068
1068
|
sourceIssueId: string;
|
|
1069
1069
|
targetIssueId: string;
|
|
1070
1070
|
type: "blocks" | "duplicates" | "relates_to";
|
|
1071
1071
|
}>;
|
|
1072
1072
|
deleteRelation: (relationId: string, scope?: BoardWriteScope<TStore>) => Promise<void>;
|
|
1073
1073
|
listFieldChanges: (issueId: string) => Promise<{
|
|
1074
|
-
|
|
1074
|
+
actorId: string | null;
|
|
1075
|
+
actorKind: "agent" | "provider-target" | "system" | "user";
|
|
1075
1076
|
createdAt: number;
|
|
1076
|
-
sourceChatSessionId: string | null;
|
|
1077
|
-
issueId: string;
|
|
1078
1077
|
field: string;
|
|
1079
1078
|
fromValue: string | null;
|
|
1079
|
+
id: string;
|
|
1080
|
+
issueId: string;
|
|
1081
|
+
sourceChatSessionId: string | null;
|
|
1080
1082
|
toValue: string | null;
|
|
1081
|
-
actorKind: "user" | "agent" | "system" | "provider-target";
|
|
1082
|
-
actorId: string | null;
|
|
1083
1083
|
}[]>;
|
|
1084
1084
|
listActivity: (issueId: string, resolver: IssueActivityResolver) => Promise<IssueActivityItemView[]>;
|
|
1085
1085
|
setStatusLine: (issueId: string, statusLine: string | null, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
description: string | null;
|
|
1090
|
-
order: number;
|
|
1086
|
+
assigneeId: string | null;
|
|
1087
|
+
assigneeKind: string | null;
|
|
1088
|
+
contextRefs: string;
|
|
1091
1089
|
createdAt: number;
|
|
1092
|
-
|
|
1090
|
+
createdById: string;
|
|
1091
|
+
createdByKind: "agent" | "provider-target" | "system" | "user";
|
|
1092
|
+
delegateAgentId: string | null;
|
|
1093
|
+
delegateProviderTargetId: string | null;
|
|
1094
|
+
description: string | null;
|
|
1093
1095
|
dueDate: number | null;
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
+
executionMode: "main" | "worktree";
|
|
1097
|
+
id: string;
|
|
1098
|
+
labels: string;
|
|
1096
1099
|
milestoneId: string | null;
|
|
1100
|
+
number: number;
|
|
1101
|
+
order: number;
|
|
1097
1102
|
parentIssueId: string | null;
|
|
1098
|
-
priority: "
|
|
1099
|
-
labels: string;
|
|
1100
|
-
assigneeKind: string | null;
|
|
1101
|
-
assigneeId: string | null;
|
|
1102
|
-
createdByKind: "user" | "agent" | "system" | "provider-target";
|
|
1103
|
-
createdById: string;
|
|
1103
|
+
priority: "high" | "low" | "medium" | "none" | "urgent";
|
|
1104
1104
|
sourceChatSessionId: string | null;
|
|
1105
|
-
|
|
1106
|
-
delegateProviderTargetId: string | null;
|
|
1107
|
-
contextRefs: string;
|
|
1105
|
+
statusId: string | null;
|
|
1108
1106
|
statusLine: string | null;
|
|
1107
|
+
title: string;
|
|
1108
|
+
updatedAt: number;
|
|
1109
1109
|
waitingFor: "human" | null;
|
|
1110
|
-
|
|
1110
|
+
workspaceId: string;
|
|
1111
1111
|
}>;
|
|
1112
1112
|
waitApproval: (issueId: string, input: {
|
|
1113
1113
|
statusLine?: string | null;
|
|
1114
1114
|
}, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
description: string | null;
|
|
1119
|
-
order: number;
|
|
1115
|
+
assigneeId: string | null;
|
|
1116
|
+
assigneeKind: string | null;
|
|
1117
|
+
contextRefs: string;
|
|
1120
1118
|
createdAt: number;
|
|
1121
|
-
|
|
1119
|
+
createdById: string;
|
|
1120
|
+
createdByKind: "agent" | "provider-target" | "system" | "user";
|
|
1121
|
+
delegateAgentId: string | null;
|
|
1122
|
+
delegateProviderTargetId: string | null;
|
|
1123
|
+
description: string | null;
|
|
1122
1124
|
dueDate: number | null;
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
+
executionMode: "main" | "worktree";
|
|
1126
|
+
id: string;
|
|
1127
|
+
labels: string;
|
|
1125
1128
|
milestoneId: string | null;
|
|
1129
|
+
number: number;
|
|
1130
|
+
order: number;
|
|
1126
1131
|
parentIssueId: string | null;
|
|
1127
|
-
priority: "
|
|
1128
|
-
labels: string;
|
|
1129
|
-
assigneeKind: string | null;
|
|
1130
|
-
assigneeId: string | null;
|
|
1131
|
-
createdByKind: "user" | "agent" | "system" | "provider-target";
|
|
1132
|
-
createdById: string;
|
|
1132
|
+
priority: "high" | "low" | "medium" | "none" | "urgent";
|
|
1133
1133
|
sourceChatSessionId: string | null;
|
|
1134
|
-
|
|
1135
|
-
delegateProviderTargetId: string | null;
|
|
1136
|
-
contextRefs: string;
|
|
1134
|
+
statusId: string | null;
|
|
1137
1135
|
statusLine: string | null;
|
|
1136
|
+
title: string;
|
|
1137
|
+
updatedAt: number;
|
|
1138
1138
|
waitingFor: "human" | null;
|
|
1139
|
-
|
|
1139
|
+
workspaceId: string;
|
|
1140
1140
|
}>;
|
|
1141
1141
|
approve: (issueId: string, input: {
|
|
1142
1142
|
comment?: string | null;
|
|
1143
1143
|
}, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
description: string | null;
|
|
1148
|
-
order: number;
|
|
1144
|
+
assigneeId: string | null;
|
|
1145
|
+
assigneeKind: string | null;
|
|
1146
|
+
contextRefs: string;
|
|
1149
1147
|
createdAt: number;
|
|
1150
|
-
|
|
1148
|
+
createdById: string;
|
|
1149
|
+
createdByKind: "agent" | "provider-target" | "system" | "user";
|
|
1150
|
+
delegateAgentId: string | null;
|
|
1151
|
+
delegateProviderTargetId: string | null;
|
|
1152
|
+
description: string | null;
|
|
1151
1153
|
dueDate: number | null;
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
+
executionMode: "main" | "worktree";
|
|
1155
|
+
id: string;
|
|
1156
|
+
labels: string;
|
|
1154
1157
|
milestoneId: string | null;
|
|
1158
|
+
number: number;
|
|
1159
|
+
order: number;
|
|
1155
1160
|
parentIssueId: string | null;
|
|
1156
|
-
priority: "
|
|
1157
|
-
labels: string;
|
|
1158
|
-
assigneeKind: string | null;
|
|
1159
|
-
assigneeId: string | null;
|
|
1160
|
-
createdByKind: "user" | "agent" | "system" | "provider-target";
|
|
1161
|
-
createdById: string;
|
|
1161
|
+
priority: "high" | "low" | "medium" | "none" | "urgent";
|
|
1162
1162
|
sourceChatSessionId: string | null;
|
|
1163
|
-
|
|
1164
|
-
delegateProviderTargetId: string | null;
|
|
1165
|
-
contextRefs: string;
|
|
1163
|
+
statusId: string | null;
|
|
1166
1164
|
statusLine: string | null;
|
|
1165
|
+
title: string;
|
|
1166
|
+
updatedAt: number;
|
|
1167
1167
|
waitingFor: "human" | null;
|
|
1168
|
-
|
|
1168
|
+
workspaceId: string;
|
|
1169
1169
|
}>;
|
|
1170
1170
|
returnCard: (issueId: string, input: {
|
|
1171
1171
|
comment: string;
|
|
@@ -1176,72 +1176,72 @@ declare function createBoardOps<TStore extends BoardStore>(store: TStore): {
|
|
|
1176
1176
|
}>;
|
|
1177
1177
|
readApproval: (issueId: string) => Promise<BoardApproval>;
|
|
1178
1178
|
linkPullRequest: (issueId: string, urlOrRef: string, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1179
|
-
number: number;
|
|
1180
|
-
id: string;
|
|
1181
1179
|
createdAt: number;
|
|
1182
|
-
createdByKind: "user" | "agent" | "system" | "provider-target";
|
|
1183
1180
|
createdById: string | null;
|
|
1181
|
+
createdByKind: "agent" | "provider-target" | "system" | "user";
|
|
1182
|
+
id: string;
|
|
1184
1183
|
issueId: string;
|
|
1184
|
+
number: number;
|
|
1185
1185
|
owner: string;
|
|
1186
1186
|
repo: string;
|
|
1187
1187
|
url: string;
|
|
1188
1188
|
}>;
|
|
1189
1189
|
unlinkPullRequest: (issueId: string, linkId: string, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1190
|
-
number: number;
|
|
1191
|
-
id: string;
|
|
1192
1190
|
createdAt: number;
|
|
1193
|
-
createdByKind: "user" | "agent" | "system" | "provider-target";
|
|
1194
1191
|
createdById: string | null;
|
|
1192
|
+
createdByKind: "agent" | "provider-target" | "system" | "user";
|
|
1193
|
+
id: string;
|
|
1195
1194
|
issueId: string;
|
|
1195
|
+
number: number;
|
|
1196
1196
|
owner: string;
|
|
1197
1197
|
repo: string;
|
|
1198
1198
|
url: string;
|
|
1199
1199
|
}>;
|
|
1200
1200
|
listPullRequests: (issueId: string) => Promise<{
|
|
1201
|
-
number: number;
|
|
1202
|
-
id: string;
|
|
1203
1201
|
createdAt: number;
|
|
1204
|
-
createdByKind: "user" | "agent" | "system" | "provider-target";
|
|
1205
1202
|
createdById: string | null;
|
|
1203
|
+
createdByKind: "agent" | "provider-target" | "system" | "user";
|
|
1204
|
+
id: string;
|
|
1206
1205
|
issueId: string;
|
|
1206
|
+
number: number;
|
|
1207
1207
|
owner: string;
|
|
1208
1208
|
repo: string;
|
|
1209
1209
|
url: string;
|
|
1210
1210
|
}[]>;
|
|
1211
1211
|
listPullRequestStandings: (issueId: string) => Promise<BoardPullRequestStanding[]>;
|
|
1212
1212
|
listMilestones: (workspaceId: string | null) => Promise<{
|
|
1213
|
-
id: string;
|
|
1214
|
-
workspaceId: string;
|
|
1215
|
-
description: string | null;
|
|
1216
1213
|
createdAt: number;
|
|
1217
|
-
|
|
1218
|
-
startDate: number | null;
|
|
1214
|
+
description: string | null;
|
|
1219
1215
|
dueDate: number | null;
|
|
1220
|
-
|
|
1216
|
+
id: string;
|
|
1217
|
+
startDate: number | null;
|
|
1218
|
+
status: "closed" | "open";
|
|
1219
|
+
title: string;
|
|
1221
1220
|
updatedAt: number;
|
|
1221
|
+
workspaceId: string;
|
|
1222
1222
|
}[]>;
|
|
1223
1223
|
deleteMilestone: (milestoneId: string, scope?: BoardWriteScope<TStore>) => Promise<void>;
|
|
1224
1224
|
createMilestone: (input: CreateMilestoneInput, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1225
|
-
id: string;
|
|
1226
|
-
workspaceId: string;
|
|
1227
|
-
description: string | null;
|
|
1228
1225
|
createdAt: number;
|
|
1229
|
-
|
|
1230
|
-
startDate: number | null;
|
|
1226
|
+
description: string | null;
|
|
1231
1227
|
dueDate: number | null;
|
|
1232
|
-
|
|
1228
|
+
id: string;
|
|
1229
|
+
startDate: number | null;
|
|
1230
|
+
status: "closed" | "open";
|
|
1231
|
+
title: string;
|
|
1233
1232
|
updatedAt: number;
|
|
1233
|
+
workspaceId: string;
|
|
1234
1234
|
}>;
|
|
1235
1235
|
updateMilestone: (milestoneId: string, input: UpdateMilestoneInput, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1236
|
-
id: string;
|
|
1237
|
-
workspaceId: string;
|
|
1238
|
-
description: string | null;
|
|
1239
1236
|
createdAt: number;
|
|
1240
|
-
|
|
1241
|
-
startDate: number | null;
|
|
1237
|
+
description: string | null;
|
|
1242
1238
|
dueDate: number | null;
|
|
1243
|
-
|
|
1239
|
+
id: string;
|
|
1240
|
+
startDate: number | null;
|
|
1241
|
+
status: "closed" | "open";
|
|
1242
|
+
title: string;
|
|
1244
1243
|
updatedAt: number;
|
|
1244
|
+
workspaceId: string;
|
|
1245
1245
|
}>;
|
|
1246
1246
|
listSprints: (workspaceId: string, now?: number) => Promise<BoardSprint[]>;
|
|
1247
1247
|
currentSprint: (workspaceId: string, now?: number) => Promise<BoardSprint | null>;
|
|
@@ -1249,92 +1249,92 @@ declare function createBoardOps<TStore extends BoardStore>(store: TStore): {
|
|
|
1249
1249
|
carryTo?: string | null;
|
|
1250
1250
|
}, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<CloseSprintResult>;
|
|
1251
1251
|
listColumns: (workspaceId: string) => Promise<{
|
|
1252
|
+
category: "backlog" | "canceled" | "completed" | "started" | "triage" | "unstarted";
|
|
1253
|
+
color: string | null;
|
|
1254
|
+
createdAt: number;
|
|
1255
|
+
description: string | null;
|
|
1256
|
+
entryRules: string | null;
|
|
1252
1257
|
id: string;
|
|
1253
|
-
workspaceId: string;
|
|
1254
1258
|
name: string;
|
|
1255
|
-
description: string | null;
|
|
1256
|
-
color: string | null;
|
|
1257
|
-
category: "triage" | "backlog" | "unstarted" | "started" | "completed" | "canceled";
|
|
1258
1259
|
order: number;
|
|
1259
|
-
|
|
1260
|
-
createdAt: number;
|
|
1260
|
+
workspaceId: string;
|
|
1261
1261
|
}[]>;
|
|
1262
1262
|
findColumn: (workspaceId: string, nameOrId: string) => Promise<{
|
|
1263
|
+
category: "backlog" | "canceled" | "completed" | "started" | "triage" | "unstarted";
|
|
1264
|
+
color: string | null;
|
|
1265
|
+
createdAt: number;
|
|
1266
|
+
description: string | null;
|
|
1267
|
+
entryRules: string | null;
|
|
1263
1268
|
id: string;
|
|
1264
|
-
workspaceId: string;
|
|
1265
1269
|
name: string;
|
|
1266
|
-
description: string | null;
|
|
1267
|
-
color: string | null;
|
|
1268
|
-
category: "triage" | "backlog" | "unstarted" | "started" | "completed" | "canceled";
|
|
1269
1270
|
order: number;
|
|
1270
|
-
|
|
1271
|
-
createdAt: number;
|
|
1271
|
+
workspaceId: string;
|
|
1272
1272
|
} | null>;
|
|
1273
1273
|
requireColumn: (workspaceId: string, nameOrId: string) => Promise<{
|
|
1274
|
+
category: "backlog" | "canceled" | "completed" | "started" | "triage" | "unstarted";
|
|
1275
|
+
color: string | null;
|
|
1276
|
+
createdAt: number;
|
|
1277
|
+
description: string | null;
|
|
1278
|
+
entryRules: string | null;
|
|
1274
1279
|
id: string;
|
|
1275
|
-
workspaceId: string;
|
|
1276
1280
|
name: string;
|
|
1277
|
-
description: string | null;
|
|
1278
|
-
color: string | null;
|
|
1279
|
-
category: "triage" | "backlog" | "unstarted" | "started" | "completed" | "canceled";
|
|
1280
1281
|
order: number;
|
|
1281
|
-
|
|
1282
|
-
createdAt: number;
|
|
1282
|
+
workspaceId: string;
|
|
1283
1283
|
}>;
|
|
1284
1284
|
ensureDefaultColumns: (workspaceId: string, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1285
|
+
category: "backlog" | "canceled" | "completed" | "started" | "triage" | "unstarted";
|
|
1286
|
+
color: string | null;
|
|
1287
|
+
createdAt: number;
|
|
1288
|
+
description: string | null;
|
|
1289
|
+
entryRules: string | null;
|
|
1285
1290
|
id: string;
|
|
1286
|
-
workspaceId: string;
|
|
1287
1291
|
name: string;
|
|
1288
|
-
description: string | null;
|
|
1289
|
-
color: string | null;
|
|
1290
|
-
category: "triage" | "backlog" | "unstarted" | "started" | "completed" | "canceled";
|
|
1291
1292
|
order: number;
|
|
1292
|
-
|
|
1293
|
-
createdAt: number;
|
|
1293
|
+
workspaceId: string;
|
|
1294
1294
|
}[]>;
|
|
1295
1295
|
createColumn: (input: BoardColumnInput, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1296
|
+
category: "backlog" | "canceled" | "completed" | "started" | "triage" | "unstarted";
|
|
1297
|
+
color: string | null;
|
|
1298
|
+
createdAt: number;
|
|
1299
|
+
description: string | null;
|
|
1300
|
+
entryRules: string | null;
|
|
1296
1301
|
id: string;
|
|
1297
|
-
workspaceId: string;
|
|
1298
1302
|
name: string;
|
|
1299
|
-
description: string | null;
|
|
1300
|
-
color: string | null;
|
|
1301
|
-
category: "triage" | "backlog" | "unstarted" | "started" | "completed" | "canceled";
|
|
1302
1303
|
order: number;
|
|
1303
|
-
|
|
1304
|
-
createdAt: number;
|
|
1304
|
+
workspaceId: string;
|
|
1305
1305
|
}>;
|
|
1306
1306
|
updateColumn: (statusId: string, patch: BoardColumnPatch, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1307
|
+
category: "backlog" | "canceled" | "completed" | "started" | "triage" | "unstarted";
|
|
1308
|
+
color: string | null;
|
|
1309
|
+
createdAt: number;
|
|
1310
|
+
description: string | null;
|
|
1311
|
+
entryRules: string | null;
|
|
1307
1312
|
id: string;
|
|
1308
|
-
workspaceId: string;
|
|
1309
1313
|
name: string;
|
|
1310
|
-
description: string | null;
|
|
1311
|
-
color: string | null;
|
|
1312
|
-
category: "triage" | "backlog" | "unstarted" | "started" | "completed" | "canceled";
|
|
1313
1314
|
order: number;
|
|
1314
|
-
|
|
1315
|
-
createdAt: number;
|
|
1315
|
+
workspaceId: string;
|
|
1316
1316
|
}>;
|
|
1317
1317
|
describeColumn: (workspaceId: string, nameOrId: string, description: string | null, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1318
|
+
category: "backlog" | "canceled" | "completed" | "started" | "triage" | "unstarted";
|
|
1319
|
+
color: string | null;
|
|
1320
|
+
createdAt: number;
|
|
1321
|
+
description: string | null;
|
|
1322
|
+
entryRules: string | null;
|
|
1318
1323
|
id: string;
|
|
1319
|
-
workspaceId: string;
|
|
1320
1324
|
name: string;
|
|
1321
|
-
description: string | null;
|
|
1322
|
-
color: string | null;
|
|
1323
|
-
category: "triage" | "backlog" | "unstarted" | "started" | "completed" | "canceled";
|
|
1324
1325
|
order: number;
|
|
1325
|
-
|
|
1326
|
-
createdAt: number;
|
|
1326
|
+
workspaceId: string;
|
|
1327
1327
|
}>;
|
|
1328
1328
|
setColumnEntryRules: (workspaceId: string, nameOrId: string, entryRules: readonly string[] | null, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1329
|
+
category: "backlog" | "canceled" | "completed" | "started" | "triage" | "unstarted";
|
|
1330
|
+
color: string | null;
|
|
1331
|
+
createdAt: number;
|
|
1332
|
+
description: string | null;
|
|
1333
|
+
entryRules: string | null;
|
|
1329
1334
|
id: string;
|
|
1330
|
-
workspaceId: string;
|
|
1331
1335
|
name: string;
|
|
1332
|
-
description: string | null;
|
|
1333
|
-
color: string | null;
|
|
1334
|
-
category: "triage" | "backlog" | "unstarted" | "started" | "completed" | "canceled";
|
|
1335
1336
|
order: number;
|
|
1336
|
-
|
|
1337
|
-
createdAt: number;
|
|
1337
|
+
workspaceId: string;
|
|
1338
1338
|
}>;
|
|
1339
1339
|
enforceColumnEntryForCards: (issueIds: string[], statusId: string, actor: BoardActor) => Promise<{
|
|
1340
1340
|
issueId: string;
|
|
@@ -1347,110 +1347,110 @@ declare function createBoardOps<TStore extends BoardStore>(store: TStore): {
|
|
|
1347
1347
|
added: string[];
|
|
1348
1348
|
}>;
|
|
1349
1349
|
startRun: (issueId: string, input: StartRunInput, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1350
|
-
id: string;
|
|
1351
|
-
executionMode: "worktree" | "main";
|
|
1352
|
-
issueId: string;
|
|
1353
|
-
launchedByKind: "user" | "agent" | "external";
|
|
1354
|
-
launchedById: string | null;
|
|
1355
1350
|
agentId: string | null;
|
|
1356
1351
|
agentName: string;
|
|
1357
|
-
host: string | null;
|
|
1358
1352
|
branch: string | null;
|
|
1359
|
-
worktreePath: string | null;
|
|
1360
|
-
state: "running" | "finished" | "failed" | "stopped";
|
|
1361
1353
|
chatSessionId: string | null;
|
|
1362
|
-
externalSessionRef: string | null;
|
|
1363
|
-
startedAt: number;
|
|
1364
1354
|
endedAt: number | null;
|
|
1365
|
-
|
|
1366
|
-
|
|
1355
|
+
executionMode: "main" | "worktree";
|
|
1356
|
+
externalSessionRef: string | null;
|
|
1357
|
+
host: string | null;
|
|
1367
1358
|
id: string;
|
|
1368
|
-
executionMode: "worktree" | "main";
|
|
1369
1359
|
issueId: string;
|
|
1370
|
-
launchedByKind: "user" | "agent" | "external";
|
|
1371
1360
|
launchedById: string | null;
|
|
1361
|
+
launchedByKind: "agent" | "external" | "user";
|
|
1362
|
+
startedAt: number;
|
|
1363
|
+
state: "failed" | "finished" | "running" | "stopped";
|
|
1364
|
+
worktreePath: string | null;
|
|
1365
|
+
}>;
|
|
1366
|
+
attachRunExecution: (runId: string, input: AttachRunExecutionInput, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1372
1367
|
agentId: string | null;
|
|
1373
1368
|
agentName: string;
|
|
1374
|
-
host: string | null;
|
|
1375
1369
|
branch: string | null;
|
|
1376
|
-
worktreePath: string | null;
|
|
1377
|
-
state: "running" | "finished" | "failed" | "stopped";
|
|
1378
1370
|
chatSessionId: string | null;
|
|
1379
|
-
externalSessionRef: string | null;
|
|
1380
|
-
startedAt: number;
|
|
1381
1371
|
endedAt: number | null;
|
|
1382
|
-
|
|
1383
|
-
|
|
1372
|
+
executionMode: "main" | "worktree";
|
|
1373
|
+
externalSessionRef: string | null;
|
|
1374
|
+
host: string | null;
|
|
1384
1375
|
id: string;
|
|
1385
|
-
executionMode: "worktree" | "main";
|
|
1386
1376
|
issueId: string;
|
|
1387
|
-
launchedByKind: "user" | "agent" | "external";
|
|
1388
1377
|
launchedById: string | null;
|
|
1378
|
+
launchedByKind: "agent" | "external" | "user";
|
|
1379
|
+
startedAt: number;
|
|
1380
|
+
state: "failed" | "finished" | "running" | "stopped";
|
|
1381
|
+
worktreePath: string | null;
|
|
1382
|
+
}>;
|
|
1383
|
+
recordRunSessionRef: (runId: string, ref: string, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1389
1384
|
agentId: string | null;
|
|
1390
1385
|
agentName: string;
|
|
1391
|
-
host: string | null;
|
|
1392
1386
|
branch: string | null;
|
|
1393
|
-
worktreePath: string | null;
|
|
1394
|
-
state: "running" | "finished" | "failed" | "stopped";
|
|
1395
1387
|
chatSessionId: string | null;
|
|
1388
|
+
endedAt: number | null;
|
|
1389
|
+
executionMode: "main" | "worktree";
|
|
1396
1390
|
externalSessionRef: string | null;
|
|
1391
|
+
host: string | null;
|
|
1392
|
+
id: string;
|
|
1393
|
+
issueId: string;
|
|
1394
|
+
launchedById: string | null;
|
|
1395
|
+
launchedByKind: "agent" | "external" | "user";
|
|
1397
1396
|
startedAt: number;
|
|
1398
|
-
|
|
1397
|
+
state: "failed" | "finished" | "running" | "stopped";
|
|
1398
|
+
worktreePath: string | null;
|
|
1399
1399
|
}>;
|
|
1400
1400
|
clearRunSessionRef: (runId: string, actor: BoardActor, options?: {
|
|
1401
1401
|
replaceWith?: string;
|
|
1402
1402
|
}, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1403
|
-
id: string;
|
|
1404
|
-
executionMode: "worktree" | "main";
|
|
1405
|
-
issueId: string;
|
|
1406
|
-
launchedByKind: "user" | "agent" | "external";
|
|
1407
|
-
launchedById: string | null;
|
|
1408
1403
|
agentId: string | null;
|
|
1409
1404
|
agentName: string;
|
|
1410
|
-
host: string | null;
|
|
1411
1405
|
branch: string | null;
|
|
1412
|
-
worktreePath: string | null;
|
|
1413
|
-
state: "running" | "finished" | "failed" | "stopped";
|
|
1414
1406
|
chatSessionId: string | null;
|
|
1415
|
-
externalSessionRef: string | null;
|
|
1416
|
-
startedAt: number;
|
|
1417
1407
|
endedAt: number | null;
|
|
1418
|
-
|
|
1419
|
-
|
|
1408
|
+
executionMode: "main" | "worktree";
|
|
1409
|
+
externalSessionRef: string | null;
|
|
1410
|
+
host: string | null;
|
|
1420
1411
|
id: string;
|
|
1421
|
-
executionMode: "worktree" | "main";
|
|
1422
1412
|
issueId: string;
|
|
1423
|
-
launchedByKind: "user" | "agent" | "external";
|
|
1424
1413
|
launchedById: string | null;
|
|
1414
|
+
launchedByKind: "agent" | "external" | "user";
|
|
1415
|
+
startedAt: number;
|
|
1416
|
+
state: "failed" | "finished" | "running" | "stopped";
|
|
1417
|
+
worktreePath: string | null;
|
|
1418
|
+
}>;
|
|
1419
|
+
finishRun: (runId: string, input: FinishRunInput, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<{
|
|
1425
1420
|
agentId: string | null;
|
|
1426
1421
|
agentName: string;
|
|
1427
|
-
host: string | null;
|
|
1428
1422
|
branch: string | null;
|
|
1429
|
-
worktreePath: string | null;
|
|
1430
|
-
state: "running" | "finished" | "failed" | "stopped";
|
|
1431
1423
|
chatSessionId: string | null;
|
|
1424
|
+
endedAt: number | null;
|
|
1425
|
+
executionMode: "main" | "worktree";
|
|
1432
1426
|
externalSessionRef: string | null;
|
|
1427
|
+
host: string | null;
|
|
1428
|
+
id: string;
|
|
1429
|
+
issueId: string;
|
|
1430
|
+
launchedById: string | null;
|
|
1431
|
+
launchedByKind: "agent" | "external" | "user";
|
|
1433
1432
|
startedAt: number;
|
|
1434
|
-
|
|
1433
|
+
state: "failed" | "finished" | "running" | "stopped";
|
|
1434
|
+
worktreePath: string | null;
|
|
1435
1435
|
}>;
|
|
1436
1436
|
stopRunningRuns: (issueId: string, actor: BoardActor, scope?: BoardWriteScope<TStore>) => Promise<string[]>;
|
|
1437
1437
|
listRuns: (issueId: string) => Promise<BoardRunView[]>;
|
|
1438
1438
|
findRunByChatSessionId: (chatSessionId: string) => Promise<{
|
|
1439
|
-
id: string;
|
|
1440
|
-
executionMode: "worktree" | "main";
|
|
1441
|
-
issueId: string;
|
|
1442
|
-
launchedByKind: "user" | "agent" | "external";
|
|
1443
|
-
launchedById: string | null;
|
|
1444
1439
|
agentId: string | null;
|
|
1445
1440
|
agentName: string;
|
|
1446
|
-
host: string | null;
|
|
1447
1441
|
branch: string | null;
|
|
1448
|
-
worktreePath: string | null;
|
|
1449
|
-
state: "running" | "finished" | "failed" | "stopped";
|
|
1450
1442
|
chatSessionId: string | null;
|
|
1443
|
+
endedAt: number | null;
|
|
1444
|
+
executionMode: "main" | "worktree";
|
|
1451
1445
|
externalSessionRef: string | null;
|
|
1446
|
+
host: string | null;
|
|
1447
|
+
id: string;
|
|
1448
|
+
issueId: string;
|
|
1449
|
+
launchedById: string | null;
|
|
1450
|
+
launchedByKind: "agent" | "external" | "user";
|
|
1452
1451
|
startedAt: number;
|
|
1453
|
-
|
|
1452
|
+
state: "failed" | "finished" | "running" | "stopped";
|
|
1453
|
+
worktreePath: string | null;
|
|
1454
1454
|
} | null>;
|
|
1455
1455
|
readBoardProjection: (workspaceId: string) => Promise<BoardRunProjection[]>;
|
|
1456
1456
|
readBoardProjectionForIssues: (issueIds: string[]) => Promise<BoardRunProjection[]>;
|
|
@@ -1459,31 +1459,31 @@ declare function createBoardOps<TStore extends BoardStore>(store: TStore): {
|
|
|
1459
1459
|
workspaceId: string;
|
|
1460
1460
|
limit?: number;
|
|
1461
1461
|
}) => Promise<{
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
description: string | null;
|
|
1466
|
-
order: number;
|
|
1462
|
+
assigneeId: string | null;
|
|
1463
|
+
assigneeKind: string | null;
|
|
1464
|
+
contextRefs: string;
|
|
1467
1465
|
createdAt: number;
|
|
1468
|
-
|
|
1466
|
+
createdById: string;
|
|
1467
|
+
createdByKind: "agent" | "provider-target" | "system" | "user";
|
|
1468
|
+
delegateAgentId: string | null;
|
|
1469
|
+
delegateProviderTargetId: string | null;
|
|
1470
|
+
description: string | null;
|
|
1469
1471
|
dueDate: number | null;
|
|
1470
|
-
|
|
1471
|
-
|
|
1472
|
+
executionMode: "main" | "worktree";
|
|
1473
|
+
id: string;
|
|
1474
|
+
labels: string;
|
|
1472
1475
|
milestoneId: string | null;
|
|
1476
|
+
number: number;
|
|
1477
|
+
order: number;
|
|
1473
1478
|
parentIssueId: string | null;
|
|
1474
|
-
priority: "
|
|
1475
|
-
labels: string;
|
|
1476
|
-
assigneeKind: string | null;
|
|
1477
|
-
assigneeId: string | null;
|
|
1478
|
-
createdByKind: "user" | "agent" | "system" | "provider-target";
|
|
1479
|
-
createdById: string;
|
|
1479
|
+
priority: "high" | "low" | "medium" | "none" | "urgent";
|
|
1480
1480
|
sourceChatSessionId: string | null;
|
|
1481
|
-
|
|
1482
|
-
delegateProviderTargetId: string | null;
|
|
1483
|
-
contextRefs: string;
|
|
1481
|
+
statusId: string | null;
|
|
1484
1482
|
statusLine: string | null;
|
|
1483
|
+
title: string;
|
|
1484
|
+
updatedAt: number;
|
|
1485
1485
|
waitingFor: "human" | null;
|
|
1486
|
-
|
|
1486
|
+
workspaceId: string;
|
|
1487
1487
|
}[]>;
|
|
1488
1488
|
buildPrimeText: (workspaceId: string) => Promise<string>;
|
|
1489
1489
|
};
|
|
@@ -1519,7 +1519,7 @@ interface BoardSlice {
|
|
|
1519
1519
|
warnings: string[];
|
|
1520
1520
|
}
|
|
1521
1521
|
/** Nothing copied — what a move that had nothing to move reports. */
|
|
1522
|
-
declare function emptyCopyCounts(): BoardCopyCounts;
|
|
1522
|
+
export declare function emptyCopyCounts(): BoardCopyCounts;
|
|
1523
1523
|
/**
|
|
1524
1524
|
* Everything the workspace has on this board, read in one pass before a single
|
|
1525
1525
|
* row is written anywhere.
|
|
@@ -1529,7 +1529,7 @@ declare function emptyCopyCounts(): BoardCopyCounts;
|
|
|
1529
1529
|
* than copied: the target holds this workspace's board and nothing else, so the
|
|
1530
1530
|
* far end of that edge is not there to point at.
|
|
1531
1531
|
*/
|
|
1532
|
-
declare function readBoardSlice(from: BoardStore, workspaceId: string): Promise<BoardSlice>;
|
|
1532
|
+
export declare function readBoardSlice(from: BoardStore, workspaceId: string): Promise<BoardSlice>;
|
|
1533
1533
|
/**
|
|
1534
1534
|
* Write a slice into the target board, in one transaction, and say what was
|
|
1535
1535
|
* written and what a person should know about it — the slice's own warnings
|
|
@@ -1542,7 +1542,7 @@ declare function readBoardSlice(from: BoardStore, workspaceId: string): Promise<
|
|
|
1542
1542
|
* holds under another id — refuses the whole copy before its first insert
|
|
1543
1543
|
* (`board_copy_conflict`, ruling 3-55).
|
|
1544
1544
|
*/
|
|
1545
|
-
declare function writeBoardSlice(to: BoardStore, slice: BoardSlice, workspaceId: string): Promise<{
|
|
1545
|
+
export declare function writeBoardSlice(to: BoardStore, slice: BoardSlice, workspaceId: string): Promise<{
|
|
1546
1546
|
copied: BoardCopyCounts;
|
|
1547
1547
|
warnings: string[];
|
|
1548
1548
|
}>;
|
|
@@ -1554,7 +1554,7 @@ declare function writeBoardSlice(to: BoardStore, slice: BoardSlice, workspaceId:
|
|
|
1554
1554
|
* foreign key that cascades on both engines, so deleting the card takes them
|
|
1555
1555
|
* with it.
|
|
1556
1556
|
*/
|
|
1557
|
-
declare function deleteBoardSlice(from: BoardStore, slice: BoardSlice): Promise<void>;
|
|
1557
|
+
export declare function deleteBoardSlice(from: BoardStore, slice: BoardSlice): Promise<void>;
|
|
1558
1558
|
//#endregion
|
|
1559
1559
|
//#region src/serve/board-error-responses.d.ts
|
|
1560
1560
|
/** What one board failure is over HTTP: the status, the sentence, and the code a client matches on when it is renamed. */
|
|
@@ -1602,7 +1602,7 @@ interface BoardErrorResponse {
|
|
|
1602
1602
|
* issue, and a client matching on `issue_*` should not have to learn a second
|
|
1603
1603
|
* spelling. The code carries through unchanged when no `code` is given.
|
|
1604
1604
|
*/
|
|
1605
|
-
declare const BOARD_ERROR_RESPONSES: Record<BoardErrorCode, BoardErrorResponse>;
|
|
1605
|
+
export declare const BOARD_ERROR_RESPONSES: Record<BoardErrorCode, BoardErrorResponse>;
|
|
1606
1606
|
//#endregion
|
|
1607
|
-
export { type AddCommentInput, type AttachRunExecutionInput,
|
|
1607
|
+
export { type AddCommentInput, type AttachRunExecutionInput, type BoardActiveRun, type BoardActor, type BoardApproval, type BoardCardWrite, type BoardColumnInput, type BoardColumnPatch, type BoardCopyCounts, type BoardErrorCode, type BoardErrorResponse, type BoardLinkedPullRequest, type BoardOps, type BoardPullRequestStanding, type BoardRunProjection, type BoardRunProjectionScope, type BoardRunView, type BoardSlice, type BoardSprint, type BoardStore, type BoardTransactionMode, type BoardWorkspaceIdentity, type BoardWriteScope, type BulkUpdateCardsInput, type BulkUpdateCardsResult, type CloseSprintResult, type CreateCardInput, type CreateCommentOnceInput, type CreateMilestoneInput, type CreateRelationInput, ENTRY_RULES, ENTRY_RULE_DESCRIPTIONS, type EntryRule, type EntryRuleFacts, type ExternalSessionRef, type FinishRunInput, type Issue, type IssueActivityAction, type IssueActivityCommentView, type IssueActivityField, type IssueActivityFieldChangeView, type IssueActivityItemView, type IssueActivityLookup, type IssueActivityResolver, type IssueActivityValueToken, type IssueActivityValueView, type IssueActorKind, type IssueActorReference, type IssueComment, type IssueCommentAuthorView, type IssueCommentStore, type IssueContextRefStore, type IssueFieldChange, type IssueFieldChangeStore, type IssueMilestone, type IssueMilestoneStore, type IssueMutationActor, type IssuePullRequest, type IssuePullRequestStore, type IssueRelation, type IssueRelationCounterpart, type IssueRelationStore, type IssueRelationView, type IssueRowStore, type IssueRun, type IssueRunStore, type IssueStatus, type IssueStatusStore, type IssueView, KANBO_TOOL_CLI_EQUIVALENTS, KANBO_TOOL_NAMES, type KanbanMeta, type KanbanMetaStore, type KanboBinding, type KanboCapabilities, type KanboCapabilitiesPackage, type KanboCapabilitiesRoles, type KanboCapabilityCommand, type KanboCapabilityCommandArgument, type KanboCapabilityCommandOption, type KanboCapabilityEntryRule, type KanboCapabilityStorage, type KanboCapabilityTool, type KanboToolCliEquivalent, type KanboToolName, type MigrateCardsInput, type MigrateCardsResult, type PullRequestFactKeys, type StartRunInput, UNMET_ENTRY_RULE_REASONS, type UnmetEntryRule, type UpdateCardInput, type UpdateMilestoneInput, evaluateEntryRules, readChecklist, readEntryRules, serializeEntryRules };
|
|
1608
1608
|
//# sourceMappingURL=index.d.cts.map
|