@supaku/agentfactory-linear 0.7.6 → 0.7.7
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/src/agent-session.d.ts +19 -0
- package/dist/src/agent-session.d.ts.map +1 -1
- package/dist/src/agent-session.js +71 -0
- package/dist/src/constants.d.ts +2 -0
- package/dist/src/constants.d.ts.map +1 -1
- package/dist/src/constants.js +2 -0
- package/dist/src/defaults/prompts.d.ts.map +1 -1
- package/dist/src/defaults/prompts.js +11 -0
- package/package.json +1 -1
|
@@ -159,6 +159,25 @@ export declare class AgentSession {
|
|
|
159
159
|
identifier: string;
|
|
160
160
|
url: string;
|
|
161
161
|
} | null>;
|
|
162
|
+
/**
|
|
163
|
+
* Report a human-needed blocker issue.
|
|
164
|
+
* Creates an issue in Icebox with "Needs Human" label, linked as blocking the current issue.
|
|
165
|
+
*
|
|
166
|
+
* This is a best-effort operation - failures are logged but don't propagate.
|
|
167
|
+
*
|
|
168
|
+
* @param title - Short description of what the human needs to do
|
|
169
|
+
* @param description - Detailed steps or context for the human
|
|
170
|
+
* @param options - Optional overrides for project and assignee
|
|
171
|
+
* @returns The created blocker issue, or null if creation failed
|
|
172
|
+
*/
|
|
173
|
+
reportHumanBlocker(title: string, description: string, options?: {
|
|
174
|
+
projectId?: string;
|
|
175
|
+
assigneeId?: string;
|
|
176
|
+
}): Promise<{
|
|
177
|
+
id: string;
|
|
178
|
+
identifier: string;
|
|
179
|
+
url: string;
|
|
180
|
+
} | null>;
|
|
162
181
|
/**
|
|
163
182
|
* Create an agent session on a sub-issue for activity reporting
|
|
164
183
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-session.d.ts","sourceRoot":"","sources":["../../src/agent-session.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"agent-session.d.ts","sourceRoot":"","sources":["../../src/agent-session.ts"],"names":[],"mappings":"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"}
|
|
@@ -496,6 +496,77 @@ ${context?.errorStack ? `### Error Stack\n\n\`\`\`\n${context.errorStack}\n\`\`\
|
|
|
496
496
|
return null;
|
|
497
497
|
}
|
|
498
498
|
}
|
|
499
|
+
/**
|
|
500
|
+
* Report a human-needed blocker issue.
|
|
501
|
+
* Creates an issue in Icebox with "Needs Human" label, linked as blocking the current issue.
|
|
502
|
+
*
|
|
503
|
+
* This is a best-effort operation - failures are logged but don't propagate.
|
|
504
|
+
*
|
|
505
|
+
* @param title - Short description of what the human needs to do
|
|
506
|
+
* @param description - Detailed steps or context for the human
|
|
507
|
+
* @param options - Optional overrides for project and assignee
|
|
508
|
+
* @returns The created blocker issue, or null if creation failed
|
|
509
|
+
*/
|
|
510
|
+
async reportHumanBlocker(title, description, options) {
|
|
511
|
+
try {
|
|
512
|
+
// Resolve project from source issue if not provided
|
|
513
|
+
let projectId = options?.projectId;
|
|
514
|
+
if (!projectId) {
|
|
515
|
+
if (!this.issue) {
|
|
516
|
+
this.issue = await this.client.getIssue(this.issueId);
|
|
517
|
+
}
|
|
518
|
+
const project = await this.issue.project;
|
|
519
|
+
projectId = project?.id;
|
|
520
|
+
}
|
|
521
|
+
const fullDescription = `${description}\n\n---\n*Source issue: ${this.issueId}*\n*Session ID: ${this.sessionId ?? 'N/A'}*\n*Auto-generated by agent blocker system*`;
|
|
522
|
+
// Get Icebox state for the team
|
|
523
|
+
if (!this.issue) {
|
|
524
|
+
this.issue = await this.client.getIssue(this.issueId);
|
|
525
|
+
}
|
|
526
|
+
const team = await this.issue.team;
|
|
527
|
+
let stateId;
|
|
528
|
+
if (team) {
|
|
529
|
+
const statuses = await this.client.getTeamStatuses(team.id);
|
|
530
|
+
stateId = statuses['Icebox'];
|
|
531
|
+
}
|
|
532
|
+
const createInput = {
|
|
533
|
+
title,
|
|
534
|
+
description: fullDescription,
|
|
535
|
+
teamId: team?.id ?? getDefaultTeamId(),
|
|
536
|
+
labelIds: LINEAR_LABELS.NEEDS_HUMAN ? [LINEAR_LABELS.NEEDS_HUMAN] : [],
|
|
537
|
+
};
|
|
538
|
+
if (projectId) {
|
|
539
|
+
createInput.projectId = projectId;
|
|
540
|
+
}
|
|
541
|
+
if (stateId) {
|
|
542
|
+
createInput.stateId = stateId;
|
|
543
|
+
}
|
|
544
|
+
const blockerIssue = await this.client.createIssue(createInput);
|
|
545
|
+
// Assign if requested (createIssue doesn't support assigneeId directly)
|
|
546
|
+
if (options?.assigneeId) {
|
|
547
|
+
await this.client.updateIssue(blockerIssue.id, {
|
|
548
|
+
assigneeId: options.assigneeId,
|
|
549
|
+
});
|
|
550
|
+
}
|
|
551
|
+
// Create blocking relation: blocker blocks source
|
|
552
|
+
await this.client.createIssueRelation({
|
|
553
|
+
issueId: blockerIssue.id,
|
|
554
|
+
relatedIssueId: this.issueId,
|
|
555
|
+
type: 'blocks',
|
|
556
|
+
});
|
|
557
|
+
// Post comment on source issue
|
|
558
|
+
await this.client.createComment(this.issueId, `\u{1F6A7} Human blocker created: [${blockerIssue.identifier}](${blockerIssue.url}) — ${title}`);
|
|
559
|
+
return {
|
|
560
|
+
id: blockerIssue.id,
|
|
561
|
+
identifier: blockerIssue.identifier,
|
|
562
|
+
url: blockerIssue.url,
|
|
563
|
+
};
|
|
564
|
+
}
|
|
565
|
+
catch (error) {
|
|
566
|
+
console.error('[AgentSession] Failed to report human blocker:', error instanceof Error ? error.message : String(error));
|
|
567
|
+
return null;
|
|
568
|
+
}
|
|
569
|
+
}
|
|
499
570
|
// ============================================================================
|
|
500
571
|
// SUB-ISSUE SESSION METHODS (for coordination work type)
|
|
501
572
|
// ============================================================================
|
package/dist/src/constants.d.ts
CHANGED
|
@@ -57,6 +57,7 @@ export declare const LINEAR_LABELS: {
|
|
|
57
57
|
readonly BUG: string;
|
|
58
58
|
readonly FEATURE: string;
|
|
59
59
|
readonly CHORE: string;
|
|
60
|
+
readonly NEEDS_HUMAN: string;
|
|
60
61
|
};
|
|
61
62
|
export declare const TEST_LABEL_NAMES: {
|
|
62
63
|
/** Mark issues as test fixtures (not for manual processing) */
|
|
@@ -75,6 +76,7 @@ export declare const ENVIRONMENT_ISSUE_TYPES: {
|
|
|
75
76
|
readonly DEPENDENCY: "dependency";
|
|
76
77
|
readonly TIMEOUT: "timeout";
|
|
77
78
|
readonly TOOL: "tool";
|
|
79
|
+
readonly HUMAN_BLOCKER: "human-blocker";
|
|
78
80
|
};
|
|
79
81
|
export type EnvironmentIssueType = (typeof ENVIRONMENT_ISSUE_TYPES)[keyof typeof ENVIRONMENT_ISSUE_TYPES];
|
|
80
82
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,QAAQ,CAAA;AAE9C;;GAEG;AACH,eAAO,MAAM,iBAAiB,gCAAgC,CAAA;AAE9D;;GAEG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAA;AAEzC;;GAEG;AACH,eAAO,MAAM,gBAAgB,MAAM,CAAA;AAEnC;;GAEG;AACH,eAAO,MAAM,mBAAmB,uCAAuC,CAAA;AAQvE;;;;;;GAMG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe;;;IAG1B,mDAAmD;;CAE3C,CAAA;AAEV;;;;;;GAMG;AACH,eAAO,MAAM,aAAa
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,QAAQ,CAAA;AAE9C;;GAEG;AACH,eAAO,MAAM,iBAAiB,gCAAgC,CAAA;AAE9D;;GAEG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAA;AAEzC;;GAEG;AACH,eAAO,MAAM,gBAAgB,MAAM,CAAA;AAEnC;;GAEG;AACH,eAAO,MAAM,mBAAmB,uCAAuC,CAAA;AAQvE;;;;;;GAMG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe;;;IAG1B,mDAAmD;;CAE3C,CAAA;AAEV;;;;;;GAMG;AACH,eAAO,MAAM,aAAa;;;;;CAKhB,CAAA;AAGV,eAAO,MAAM,gBAAgB;IAC3B,+DAA+D;;IAE/D,2CAA2C;;CAEnC,CAAA;AAMV;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;CAS1B,CAAA;AAEV,MAAM,MAAM,oBAAoB,GAC9B,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,OAAO,uBAAuB,CAAC,CAAA"}
|
package/dist/src/constants.js
CHANGED
|
@@ -67,6 +67,7 @@ export const LINEAR_LABELS = {
|
|
|
67
67
|
get BUG() { return process.env.LINEAR_LABEL_BUG ?? ''; },
|
|
68
68
|
get FEATURE() { return process.env.LINEAR_LABEL_FEATURE ?? ''; },
|
|
69
69
|
get CHORE() { return process.env.LINEAR_LABEL_CHORE ?? ''; },
|
|
70
|
+
get NEEDS_HUMAN() { return process.env.LINEAR_LABEL_NEEDS_HUMAN ?? ''; },
|
|
70
71
|
};
|
|
71
72
|
// Test-related labels (created dynamically, not hardcoded IDs)
|
|
72
73
|
export const TEST_LABEL_NAMES = {
|
|
@@ -89,4 +90,5 @@ export const ENVIRONMENT_ISSUE_TYPES = {
|
|
|
89
90
|
DEPENDENCY: 'dependency',
|
|
90
91
|
TIMEOUT: 'timeout',
|
|
91
92
|
TOOL: 'tool',
|
|
93
|
+
HUMAN_BLOCKER: 'human-blocker',
|
|
92
94
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../src/defaults/prompts.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../src/defaults/prompts.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAahE;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,aAAa,EACvB,cAAc,CAAC,EAAE,MAAM,GACtB,MAAM,CA4DR;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,eAAe,EAAE,MAAM,EACvB,gBAAgB,EAAE,cAAc,EAAE,GACjC,MAAM,CAoBR;AAED;;GAEG;AACH,wBAAgB,mCAAmC,CACjD,eAAe,EAAE,MAAM,EACvB,gBAAgB,EAAE,cAAc,EAAE,GACjC,MAAM,CAmBR"}
|
|
@@ -4,6 +4,16 @@
|
|
|
4
4
|
* These provide sensible defaults that can be overridden by consumers.
|
|
5
5
|
* The Supaku project overrides these with its own prompts.ts.
|
|
6
6
|
*/
|
|
7
|
+
const HUMAN_BLOCKER_INSTRUCTION = `
|
|
8
|
+
|
|
9
|
+
HUMAN-NEEDED BLOCKERS:
|
|
10
|
+
If you encounter work that requires human action and cannot be resolved autonomously
|
|
11
|
+
(e.g., missing API keys/credentials, infrastructure not provisioned, third-party onboarding,
|
|
12
|
+
manual setup steps, policy decisions, access permissions), create a blocker issue:
|
|
13
|
+
pnpm linear create-blocker <SOURCE-ISSUE-ID> --title "What human needs to do" --description "Detailed steps"
|
|
14
|
+
This creates a tracked issue in Icebox with 'Needs Human' label, linked as blocking the source issue.
|
|
15
|
+
Do NOT silently skip human-needed work or bury it in comments.
|
|
16
|
+
Only create blockers for things that genuinely require a human — not for things you can retry or work around.`;
|
|
7
17
|
/**
|
|
8
18
|
* Generate a default prompt for a given work type and issue identifier.
|
|
9
19
|
*
|
|
@@ -63,6 +73,7 @@ If any sub-issue is not Finished, report the failure and do not mark the parent
|
|
|
63
73
|
basePrompt = `Coordinate acceptance across sub-issues for parent issue ${identifier}. Verify all sub-issues are Delivered, validate the PR (CI passing, no conflicts), merge the PR, and bulk-update sub-issues to Accepted.`;
|
|
64
74
|
break;
|
|
65
75
|
}
|
|
76
|
+
basePrompt += HUMAN_BLOCKER_INSTRUCTION;
|
|
66
77
|
if (mentionContext) {
|
|
67
78
|
return `${basePrompt}\n\nAdditional context from the user's mention:\n${mentionContext}`;
|
|
68
79
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@supaku/agentfactory-linear",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.7",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Linear issue tracker integration for AgentFactory — status transitions, agent sessions, work routing",
|
|
6
6
|
"author": "Supaku (https://supaku.com)",
|