@cat-factory/integrations 0.13.0 → 0.14.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"GitHubIssuesProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/tasks/GitHubIssuesProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,YAAY,EAEjB,KAAK,4BAA4B,EACjC,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC9B,MAAM,qBAAqB,CAAA;AAkB5B,MAAM,WAAW,gCAAgC;IAC/C,YAAY,EAAE,YAAY,CAAA;IAC1B,8EAA8E;IAC9E,aAAa,EAAE,4BAA4B,CAAA;CAC5C;AAED,qBAAa,oBAAqB,YAAW,kBAAkB;IAIjD,OAAO,CAAC,QAAQ,CAAC,IAAI;IAHjC,QAAQ,CAAC,IAAI,EAAG,QAAQ,CAAS;IACjC,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;MAA2B;IAE9C,YAA6B,IAAI,EAAE,gCAAgC,EAAI;IAEvE;;;;OAIG;IACH,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,wBAAwB,CAErE;IAED,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAErC;IAEK,SAAS,CAAC,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CA0BvF;IAED;;;;;;;;;;;;;OAaG;IACG,MAAM,CACV,YAAY,EAAE,eAAe,EAC7B,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,KAAK,CAAC,EAAE,mBAAmB,GAC1B,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAqC7B;IAED;;;;;;;;OAQG;YACW,UAAU;IAsBxB;;;;;;;;;;OAUG;IACG,QAAQ,CAAC,KAAK,EAAE;QACpB,WAAW,EAAE,MAAM,CAAA;QACnB,WAAW,EAAE,eAAe,GAAG,IAAI,CAAA;KACpC,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAoDhC;IAED;;;;;;OAMG;IACH,OAAO,CAAC,mBAAmB;IAqC3B;;;;;OAKG;YACW,qBAAqB;CAUpC"}
1
+ {"version":3,"file":"GitHubIssuesProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/tasks/GitHubIssuesProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,YAAY,EAEjB,KAAK,4BAA4B,EACjC,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC9B,MAAM,qBAAqB,CAAA;AAkB5B,MAAM,WAAW,gCAAgC;IAC/C,YAAY,EAAE,YAAY,CAAA;IAC1B,8EAA8E;IAC9E,aAAa,EAAE,4BAA4B,CAAA;CAC5C;AAED,qBAAa,oBAAqB,YAAW,kBAAkB;IAIjD,OAAO,CAAC,QAAQ,CAAC,IAAI;IAHjC,QAAQ,CAAC,IAAI,EAAG,QAAQ,CAAS;IACjC,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;MAA2B;IAE9C,YAA6B,IAAI,EAAE,gCAAgC,EAAI;IAEvE;;;;OAIG;IACH,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,wBAAwB,CAErE;IAED,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAErC;IAEK,SAAS,CAAC,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAyCvF;IAED;;;;;;;;;;;;;OAaG;IACG,MAAM,CACV,YAAY,EAAE,eAAe,EAC7B,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,KAAK,CAAC,EAAE,mBAAmB,GAC1B,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAqC7B;IAED;;;;;;;;OAQG;YACW,UAAU;IAsBxB;;;;;;;;;;OAUG;IACG,QAAQ,CAAC,KAAK,EAAE;QACpB,WAAW,EAAE,MAAM,CAAA;QACnB,WAAW,EAAE,eAAe,GAAG,IAAI,CAAA;KACpC,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAoDhC;IAED;;;;;;OAMG;IACH,OAAO,CAAC,mBAAmB;IAqC3B;;;;;OAKG;YACW,qBAAqB;CAUpC"}
@@ -26,7 +26,20 @@ export class GitHubIssuesProvider {
26
26
  throw new ValidationError(`"${externalId}" is not a valid GitHub issue reference`);
27
27
  }
28
28
  const installationId = await this.resolveInstallationId(id.owner);
29
- const detail = await this.deps.githubClient.getIssue(installationId, { owner: id.owner, repo: id.repo }, id.number);
29
+ const ref = { owner: id.owner, repo: id.repo };
30
+ const detail = await this.deps.githubClient.getIssue(installationId, ref, id.number);
31
+ // Sub-issues (the GitHub-native parent→child relationship) are the epic-import's
32
+ // children. Best-effort: a client/runtime without the sub-issues API, or an issue
33
+ // with none, yields no children — the issue then imports as a flat task.
34
+ let childExternalIds = [];
35
+ if (this.deps.githubClient.listSubIssues) {
36
+ const subs = await this.deps.githubClient
37
+ .listSubIssues(installationId, ref, id.number)
38
+ .catch(() => []);
39
+ childExternalIds = subs.map((s) => githubIssuesLogic.githubIssueExternalId({ owner: s.owner, repo: s.repo, number: s.number }));
40
+ }
41
+ // GitHub has no dependency field, so "blocked by"/"depends on" are parsed from the body.
42
+ const links = githubIssuesLogic.parseIssueDependencyLinks(detail.body, id.owner, id.repo);
30
43
  return {
31
44
  externalId,
32
45
  url: detail.url || githubIssuesLogic.githubIssueUrl(id),
@@ -41,6 +54,10 @@ export class GitHubIssuesProvider {
41
54
  labels: detail.labels,
42
55
  description: detail.body,
43
56
  comments: detail.comments,
57
+ isEpic: childExternalIds.length > 0,
58
+ parentExternalId: detail.parentRef ?? null,
59
+ childExternalIds,
60
+ links,
44
61
  };
45
62
  }
46
63
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"GitHubIssuesProvider.js","sourceRoot":"","sources":["../../../src/modules/tasks/GitHubIssuesProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GitHubIssuesProvider.js","sourceRoot":"","sources":["../../../src/modules/tasks/GitHubIssuesProvider.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,13 @@ export declare class JiraProvider implements TaskSourceProvider {
24
24
  normalizeConnection(input: TaskCredentials): NormalizedTaskConnection;
25
25
  parseRef(input: string): string | null;
26
26
  fetchTask(credentials: TaskCredentials, externalId: string): Promise<TaskContent>;
27
+ /**
28
+ * List an epic's / parent's child issue keys via JQL (used by the epic-import walk).
29
+ * Follows the enhanced-search `nextPageToken` cursor (bounded by {@link CHILD_PAGE_CAP})
30
+ * so an epic with >100 children imports its full child set rather than silently the first
31
+ * page. Any failed page returns what was gathered so far — best-effort, never fatal.
32
+ */
33
+ private fetchChildKeys;
27
34
  /**
28
35
  * Live setup check: authenticate against `/myself` (the cheapest authenticated
29
36
  * read) with the stored email + API token. A 401 means Jira rejected the
@@ -1 +1 @@
1
- {"version":3,"file":"JiraProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/tasks/JiraProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC9B,MAAM,qBAAqB,CAAA;AAkB5B,yEAAyE;AACzE,qBAAa,YAAa,SAAQ,KAAK;IAEnC,QAAQ,CAAC,MAAM,EAAE,MAAM;IADzB,YACW,MAAM,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EAIhB;CACF;AAsBD,qBAAa,YAAa,YAAW,kBAAkB;IACrD,QAAQ,CAAC,IAAI,EAAG,MAAM,CAAS;IAC/B,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;MAAkB;IAErC,mBAAmB,CAAC,KAAK,EAAE,eAAe,GAAG,wBAAwB,CAepE;IAED,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAErC;IAEK,SAAS,CAAC,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CA4CtF;IAED;;;;;;OAMG;IACG,QAAQ,CAAC,KAAK,EAAE;QACpB,WAAW,EAAE,MAAM,CAAA;QACnB,WAAW,EAAE,eAAe,GAAG,IAAI,CAAA;KACpC,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA2EhC;IAEK,MAAM,CAAC,WAAW,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CA6BrF;CACF"}
1
+ {"version":3,"file":"JiraProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/tasks/JiraProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC9B,MAAM,qBAAqB,CAAA;AAqB5B,yEAAyE;AACzE,qBAAa,YAAa,SAAQ,KAAK;IAEnC,QAAQ,CAAC,MAAM,EAAE,MAAM;IADzB,YACW,MAAM,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EAIhB;CACF;AAyBD,qBAAa,YAAa,YAAW,kBAAkB;IACrD,QAAQ,CAAC,IAAI,EAAG,MAAM,CAAS;IAC/B,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;MAAkB;IAErC,mBAAmB,CAAC,KAAK,EAAE,eAAe,GAAG,wBAAwB,CAepE;IAED,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAErC;IAEK,SAAS,CAAC,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAgEtF;IAED;;;;;OAKG;YACW,cAAc;IA+B5B;;;;;;OAMG;IACG,QAAQ,CAAC,KAAK,EAAE;QACpB,WAAW,EAAE,MAAM,CAAA;QACnB,WAAW,EAAE,eAAe,GAAG,IAAI,CAAA;KACpC,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA2EhC;IAEK,MAAM,CAAC,WAAW,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CA6BrF;CACF"}
@@ -13,6 +13,8 @@ import * as jiraLogic from './jira.logic.js';
13
13
  // the global `fetch`/`btoa` (present on both runtimes), so the Cloudflare and the
14
14
  // Node facade wire the SAME class (see CLAUDE.md "Keep the runtimes symmetric").
15
15
  const USER_AGENT = 'cat-factory';
16
+ /** Max child-issue pages walked per epic (100/page) — a sanity bound on the import fan-out. */
17
+ const CHILD_PAGE_CAP = 20;
16
18
  /** Carries the HTTP status so callers can surface a meaningful error. */
17
19
  export class JiraApiError extends Error {
18
20
  status;
@@ -46,7 +48,7 @@ export class JiraProvider {
46
48
  }
47
49
  async fetchTask(credentials, externalId) {
48
50
  const base = credentials.baseUrl.replace(/\/+$/, '');
49
- const fields = 'summary,description,status,issuetype,assignee,priority,labels,comment';
51
+ const fields = 'summary,description,status,issuetype,assignee,priority,labels,comment,parent,subtasks,issuelinks';
50
52
  const url = `${base}/rest/api/3/issue/${encodeURIComponent(externalId)}?fields=${fields}`;
51
53
  const auth = btoa(`${credentials.accountEmail}:${credentials.apiToken}`);
52
54
  const res = await fetch(url, {
@@ -71,6 +73,18 @@ export class JiraProvider {
71
73
  createdAt: c.created ?? '',
72
74
  body: jiraLogic.adfToMarkdown(c.body),
73
75
  }));
76
+ // Direct sub-tasks come back on the issue; an epic's children are a reverse relation,
77
+ // so fetch them by JQL when the issue is an epic. Best-effort — a failed children query
78
+ // never fails the import (the epic still lands, just without its children pre-linked).
79
+ const isEpic = jiraLogic.isJiraEpicType(f.issuetype?.name);
80
+ const childKeys = new Set((Array.isArray(f.subtasks) ? f.subtasks : [])
81
+ .map((s) => s.key)
82
+ .filter((k) => !!k));
83
+ if (isEpic) {
84
+ for (const k of await this.fetchChildKeys(credentials, json.key).catch(() => [])) {
85
+ childKeys.add(k);
86
+ }
87
+ }
74
88
  return {
75
89
  externalId: json.key,
76
90
  url: `${base}/browse/${json.key}`,
@@ -82,8 +96,48 @@ export class JiraProvider {
82
96
  labels: Array.isArray(f.labels) ? f.labels : [],
83
97
  description: jiraLogic.adfToMarkdown(f.description),
84
98
  comments,
99
+ isEpic,
100
+ parentExternalId: f.parent?.key ?? null,
101
+ childExternalIds: [...childKeys],
102
+ links: jiraLogic.mapJiraIssueLinks(f.issuelinks),
85
103
  };
86
104
  }
105
+ /**
106
+ * List an epic's / parent's child issue keys via JQL (used by the epic-import walk).
107
+ * Follows the enhanced-search `nextPageToken` cursor (bounded by {@link CHILD_PAGE_CAP})
108
+ * so an epic with >100 children imports its full child set rather than silently the first
109
+ * page. Any failed page returns what was gathered so far — best-effort, never fatal.
110
+ */
111
+ async fetchChildKeys(credentials, key) {
112
+ const base = credentials.baseUrl.replace(/\/+$/, '');
113
+ atlassianLogic.assertSafeAtlassianBaseUrl(base);
114
+ const jql = encodeURIComponent(jiraLogic.buildJiraChildrenJql(key));
115
+ const auth = btoa(`${credentials.accountEmail}:${credentials.apiToken}`);
116
+ const keys = [];
117
+ let nextPageToken;
118
+ for (let page = 0; page < CHILD_PAGE_CAP; page++) {
119
+ const cursor = nextPageToken ? `&nextPageToken=${encodeURIComponent(nextPageToken)}` : '';
120
+ const url = `${base}/rest/api/3/search/jql?jql=${jql}&fields=summary&maxResults=100${cursor}`;
121
+ const res = await fetch(url, {
122
+ method: 'GET',
123
+ headers: {
124
+ authorization: `Basic ${auth}`,
125
+ accept: 'application/json',
126
+ 'user-agent': USER_AGENT,
127
+ },
128
+ });
129
+ if (!res.ok)
130
+ break;
131
+ const json = (await res.json().catch(() => null));
132
+ for (const i of json?.issues ?? [])
133
+ if (i.key)
134
+ keys.push(i.key);
135
+ nextPageToken = json?.nextPageToken;
136
+ if (json?.isLast || !nextPageToken)
137
+ break;
138
+ }
139
+ return keys;
140
+ }
87
141
  /**
88
142
  * Live setup check: authenticate against `/myself` (the cheapest authenticated
89
143
  * read) with the stored email + API token. A 401 means Jira rejected the
@@ -1 +1 @@
1
- {"version":3,"file":"JiraProvider.js","sourceRoot":"","sources":["../../../src/modules/tasks/JiraProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JiraProvider.js","sourceRoot":"","sources":["../../../src/modules/tasks/JiraProvider.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { Clock, TaskSearchRepoScope } from '@cat-factory/kernel';
1
+ import type { Clock, TaskContent, TaskSearchRepoScope } from '@cat-factory/kernel';
2
2
  import type { TaskSourceRegistry } from '@cat-factory/kernel';
3
3
  import type { TaskRecord, TaskRepository } from '@cat-factory/kernel';
4
4
  import type { SourceTask, TaskSearchResult, TaskSourceKind } from '@cat-factory/kernel';
@@ -27,6 +27,16 @@ export declare class TaskImportService {
27
27
  private resolveCredentials;
28
28
  /** Fetch an issue (by key or URL) and upsert its projection; returns the issue. */
29
29
  import(workspaceId: string, source: TaskSourceKind, ref: string): Promise<SourceTask>;
30
+ /**
31
+ * As {@link import}, but also returns the provider's full {@link TaskContent} — including
32
+ * the transient hierarchy/dependency fields (isEpic / parent / children / links) that
33
+ * the projection drops. The epic-spawn import uses these to build the board graph; the
34
+ * persisted projection still backs agent-context + list rendering.
35
+ */
36
+ importDetailed(workspaceId: string, source: TaskSourceKind, ref: string): Promise<{
37
+ task: SourceTask;
38
+ content: TaskContent;
39
+ }>;
30
40
  /**
31
41
  * Search a tracker by free text, returning lean hits (not yet imported). The
32
42
  * provider authenticates with the workspace's stored credentials and builds/
@@ -1 +1 @@
1
- {"version":3,"file":"TaskImportService.d.ts","sourceRoot":"","sources":["../../../src/modules/tasks/TaskImportService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACrE,OAAO,KAAK,EAAuC,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAClG,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAGvF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AASvE,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,cAAc,EAAE,cAAc,CAAA;IAC9B,iBAAiB,EAAE,qBAAqB,CAAA;IACxC,mBAAmB,EAAE,mBAAmB,CAAA;IACxC,KAAK,EAAE,KAAK,CAAA;CACb;AAED,8EAA8E;AAC9E,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAiB3D;AAED,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,6BAA6B,EAAI;IAEpE,OAAO,CAAC,eAAe;IAMvB;;;;;;OAMG;YACW,kBAAkB;IAahC,mFAAmF;IAC7E,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAgC1F;IAED;;;;;;;;;OASG;IACG,MAAM,CACV,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,mBAAmB,GAC1B,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAQ7B;IAED,+EAA+E;IACzE,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAG1D;IAED,6DAA6D;IACvD,WAAW,CACf,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,UAAU,CAAC,CAMrB;CACF"}
1
+ {"version":3,"file":"TaskImportService.d.ts","sourceRoot":"","sources":["../../../src/modules/tasks/TaskImportService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAClF,OAAO,KAAK,EAAuC,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAClG,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAGvF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AASvE,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,cAAc,EAAE,cAAc,CAAA;IAC9B,iBAAiB,EAAE,qBAAqB,CAAA;IACxC,mBAAmB,EAAE,mBAAmB,CAAA;IACxC,KAAK,EAAE,KAAK,CAAA;CACb;AAED,8EAA8E;AAC9E,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAiB3D;AAED,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,6BAA6B,EAAI;IAEpE,OAAO,CAAC,eAAe;IAMvB;;;;;;OAMG;YACW,kBAAkB;IAahC,mFAAmF;IAC7E,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAE1F;IAED;;;;;OAKG;IACG,cAAc,CAClB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,EACtB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC;QAAE,IAAI,EAAE,UAAU,CAAC;QAAC,OAAO,EAAE,WAAW,CAAA;KAAE,CAAC,CAgCrD;IAED;;;;;;;;;OASG;IACG,MAAM,CACV,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,mBAAmB,GAC1B,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAQ7B;IAED,+EAA+E;IACzE,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAG1D;IAED,6DAA6D;IACvD,WAAW,CACf,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,UAAU,CAAC,CAMrB;CACF"}
@@ -49,6 +49,15 @@ export class TaskImportService {
49
49
  }
50
50
  /** Fetch an issue (by key or URL) and upsert its projection; returns the issue. */
51
51
  async import(workspaceId, source, ref) {
52
+ return (await this.importDetailed(workspaceId, source, ref)).task;
53
+ }
54
+ /**
55
+ * As {@link import}, but also returns the provider's full {@link TaskContent} — including
56
+ * the transient hierarchy/dependency fields (isEpic / parent / children / links) that
57
+ * the projection drops. The epic-spawn import uses these to build the board graph; the
58
+ * persisted projection still backs agent-context + list rendering.
59
+ */
60
+ async importDetailed(workspaceId, source, ref) {
52
61
  await requireWorkspace(this.deps.workspaceRepository, workspaceId);
53
62
  const provider = this.requireProvider(source);
54
63
  const externalId = provider.parseRef(ref);
@@ -78,7 +87,7 @@ export class TaskImportService {
78
87
  deletedAt: null,
79
88
  };
80
89
  await this.deps.taskRepository.upsert(record);
81
- return toSourceTask(record);
90
+ return { task: toSourceTask(record), content };
82
91
  }
83
92
  /**
84
93
  * Search a tracker by free text, returning lean hits (not yet imported). The
@@ -1 +1 @@
1
- {"version":3,"file":"TaskImportService.js","sourceRoot":"","sources":["../../../src/modules/tasks/TaskImportService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TaskImportService.js","sourceRoot":"","sources":["../../../src/modules/tasks/TaskImportService.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,25 @@
1
- import type { Block, SourceTask, TaskSourceKind } from '@cat-factory/kernel';
1
+ import type { Block, Position, SourceTask, TaskSourceKind } from '@cat-factory/kernel';
2
2
  import type { BlockRepository } from '@cat-factory/kernel';
3
3
  import type { BoardWritePort } from '@cat-factory/kernel';
4
4
  import type { TaskRepository } from '@cat-factory/kernel';
5
+ import type { TaskImportService } from './TaskImportService.js';
5
6
  export interface TaskLinkServiceDependencies {
6
7
  boardService: BoardWritePort;
7
8
  blockRepository: BlockRepository;
8
9
  taskRepository: TaskRepository;
10
+ /** Imports the epic + child issues (the epic-spawn path needs the detailed content). */
11
+ importService: TaskImportService;
9
12
  }
10
13
  /** A board task created from an imported issue, plus the now-linked issue. */
11
14
  export interface TaskFromIssue {
12
15
  block: Block;
13
16
  task: SourceTask;
14
17
  }
18
+ /** The result of spawning an epic: the epic node + the child task blocks created. */
19
+ export interface SpawnedEpic {
20
+ epic: Block;
21
+ tasks: Block[];
22
+ }
15
23
  export declare class TaskLinkService {
16
24
  private readonly deps;
17
25
  constructor(deps: TaskLinkServiceDependencies);
@@ -26,5 +34,16 @@ export declare class TaskLinkService {
26
34
  * `createdBy` (the signed-in user) flows onto the new task for notification routing.
27
35
  */
28
36
  createTaskFromIssue(workspaceId: string, containerId: string, source: TaskSourceKind, externalId: string, createdBy?: string | null): Promise<TaskFromIssue>;
37
+ /**
38
+ * Spawn an epic and its children onto the board. Imports the epic issue, creates an
39
+ * `epic`-level grouping node from it, then imports + materialises each child issue as a
40
+ * board task inside `containerId` (each joined to the epic via `epicId`). Finally it
41
+ * seeds `dependsOn` edges from the issues' normalized links ("blocked by" / "depends on"
42
+ * / "blocks"), resolving link endpoints against the just-created blocks. Edges to issues
43
+ * outside the imported set are skipped, and the board's cycle guard protects against bad
44
+ * data (a rejected edge is ignored, never fatal). The board (`epicId` + `dependsOn`) is
45
+ * the source of truth after the spawn; the issue projections back agent context.
46
+ */
47
+ spawnEpic(workspaceId: string, source: TaskSourceKind, epicRef: string, containerId: string, createdBy?: string | null, position?: Position): Promise<SpawnedEpic>;
29
48
  }
30
49
  //# sourceMappingURL=TaskLinkService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TaskLinkService.d.ts","sourceRoot":"","sources":["../../../src/modules/tasks/TaskLinkService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAc,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAExF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAUzD,MAAM,WAAW,2BAA2B;IAC1C,YAAY,EAAE,cAAc,CAAA;IAC5B,eAAe,EAAE,eAAe,CAAA;IAChC,cAAc,EAAE,cAAc,CAAA;CAC/B;AAED,8EAA8E;AAC9E,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,KAAK,CAAA;IACZ,IAAI,EAAE,UAAU,CAAA;CACjB;AAED,qBAAa,eAAe;IACd,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,2BAA2B,EAAI;IAElE,wEAAwE;IAClE,WAAW,CACf,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,UAAU,CAAC,CAarB;IAED;;;;;;;OAOG;IACG,mBAAmB,CACvB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GACxB,OAAO,CAAC,aAAa,CAAC,CAgCxB;CACF"}
1
+ {"version":3,"file":"TaskLinkService.d.ts","sourceRoot":"","sources":["../../../src/modules/tasks/TaskLinkService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAe,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEnG,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAU/D,MAAM,WAAW,2BAA2B;IAC1C,YAAY,EAAE,cAAc,CAAA;IAC5B,eAAe,EAAE,eAAe,CAAA;IAChC,cAAc,EAAE,cAAc,CAAA;IAC9B,wFAAwF;IACxF,aAAa,EAAE,iBAAiB,CAAA;CACjC;AAED,8EAA8E;AAC9E,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,KAAK,CAAA;IACZ,IAAI,EAAE,UAAU,CAAA;CACjB;AAED,qFAAqF;AACrF,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,KAAK,CAAA;IACX,KAAK,EAAE,KAAK,EAAE,CAAA;CACf;AAED,qBAAa,eAAe;IACd,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,2BAA2B,EAAI;IAElE,wEAAwE;IAClE,WAAW,CACf,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,UAAU,CAAC,CAarB;IAED;;;;;;;OAOG;IACG,mBAAmB,CACvB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GACxB,OAAO,CAAC,aAAa,CAAC,CAgCxB;IAED;;;;;;;;;OASG;IACG,SAAS,CACb,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,EACzB,QAAQ,CAAC,EAAE,QAAQ,GAClB,OAAO,CAAC,WAAW,CAAC,CAwFtB;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"TaskLinkService.js","sourceRoot":"","sources":["../../../src/modules/tasks/TaskLinkService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TaskLinkService.js","sourceRoot":"","sources":["../../../src/modules/tasks/TaskLinkService.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { TaskSearchRepoScope, TaskSourceDescriptor } from '@cat-factory/kernel';
1
+ import type { TaskDependencyLink, TaskSearchRepoScope, TaskSourceDescriptor } from '@cat-factory/kernel';
2
2
  /**
3
3
  * What the connect UI renders. GitHub issues piggyback on the workspace's
4
4
  * existing GitHub App installation, so there are NO credential fields — the
@@ -32,6 +32,17 @@ export interface GitHubIssueExternalId {
32
32
  export declare function parseGitHubIssueExternalId(externalId: string): GitHubIssueExternalId | null;
33
33
  /** The canonical web URL for an issue external id. */
34
34
  export declare function githubIssueUrl(id: GitHubIssueExternalId): string;
35
+ /**
36
+ * Parse dependency references out of a GitHub issue body. Scans line by line for the
37
+ * recognised phrases ("blocked by", "depends on", "blocks"), each governing the issue
38
+ * references that follow it — a bare `#123` (resolved against the issue's own repo) or a
39
+ * cross-repo `owner/repo#123`. Each reference is attributed to the NEAREST phrase that
40
+ * precedes it, so a mixed line like `Depends on #5 but blocks #9` classifies #5 and #9
41
+ * independently. Returns normalized {@link TaskDependencyLink}s with canonical
42
+ * `owner/repo#number` external ids. Lenient by design: anything it doesn't recognise is
43
+ * simply skipped (GitHub bodies are free-form), and `relates` is never inferred here.
44
+ */
45
+ export declare function parseIssueDependencyLinks(body: string, contextOwner: string, contextRepo: string): TaskDependencyLink[];
35
46
  /**
36
47
  * Build the GitHub issue-search text, scoping it to a single repo when a service's
37
48
  * repo is known. The `repo:owner/name` qualifier keeps hits from leaking in from
@@ -1 +1 @@
1
- {"version":3,"file":"github-issues.logic.d.ts","sourceRoot":"","sources":["../../../src/modules/tasks/github-issues.logic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAUpF;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,oBAQtC,CAAA;AAED,0EAA0E;AAC1E,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,qBAAqB,GAAG,MAAM,CAEvE;AAMD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAShE;AAED,qEAAqE;AACrE,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG,qBAAqB,GAAG,IAAI,CAI3F;AAED,sDAAsD;AACtD,wBAAgB,cAAc,CAAC,EAAE,EAAE,qBAAqB,GAAG,MAAM,CAEhE;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,mBAAmB,GAAG,MAAM,CAK9F;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,mBAAmB,GAC1B,MAAM,GAAG,IAAI,CAQf"}
1
+ {"version":3,"file":"github-issues.logic.d.ts","sourceRoot":"","sources":["../../../src/modules/tasks/github-issues.logic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,qBAAqB,CAAA;AAU5B;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,oBAQtC,CAAA;AAED,0EAA0E;AAC1E,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,qBAAqB,GAAG,MAAM,CAEvE;AAMD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAShE;AAED,qEAAqE;AACrE,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG,qBAAqB,GAAG,IAAI,CAI3F;AAED,sDAAsD;AACtD,wBAAgB,cAAc,CAAC,EAAE,EAAE,qBAAqB,GAAG,MAAM,CAEhE;AAWD;;;;;;;;;GASG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,GAClB,kBAAkB,EAAE,CA0CtB;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,mBAAmB,GAAG,MAAM,CAK9F;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,mBAAmB,GAC1B,MAAM,GAAG,IAAI,CAQf"}
@@ -64,6 +64,75 @@ export function parseGitHubIssueExternalId(externalId) {
64
64
  export function githubIssueUrl(id) {
65
65
  return `https://github.com/${id.owner}/${id.repo}/issues/${id.number}`;
66
66
  }
67
+ // Dependency-reference phrases recognised in a GitHub issue body. GitHub has no native
68
+ // "blocked by"/"depends on" field, so the convention is a line like `Blocked by #12` or
69
+ // `Depends on owner/repo#34`. We map each phrase to a normalized link direction.
70
+ const DEP_PHRASES = [
71
+ { re: /\bblocked\s+by\b/i, type: 'blockedBy' },
72
+ { re: /\bdepends?\s+on\b/i, type: 'dependsOn' },
73
+ { re: /\bblocks\b/i, type: 'blocks' },
74
+ ];
75
+ /**
76
+ * Parse dependency references out of a GitHub issue body. Scans line by line for the
77
+ * recognised phrases ("blocked by", "depends on", "blocks"), each governing the issue
78
+ * references that follow it — a bare `#123` (resolved against the issue's own repo) or a
79
+ * cross-repo `owner/repo#123`. Each reference is attributed to the NEAREST phrase that
80
+ * precedes it, so a mixed line like `Depends on #5 but blocks #9` classifies #5 and #9
81
+ * independently. Returns normalized {@link TaskDependencyLink}s with canonical
82
+ * `owner/repo#number` external ids. Lenient by design: anything it doesn't recognise is
83
+ * simply skipped (GitHub bodies are free-form), and `relates` is never inferred here.
84
+ */
85
+ export function parseIssueDependencyLinks(body, contextOwner, contextRepo) {
86
+ if (!body)
87
+ return [];
88
+ const out = [];
89
+ const seen = new Set();
90
+ // Match `owner/repo#123` or a bare `#123`.
91
+ const refRe = new RegExp(`(?:(${SEG})/(${SEG}))?#(\\d+)`, 'g');
92
+ for (const rawLine of body.split(/\r?\n/)) {
93
+ const line = rawLine.trim();
94
+ if (!line)
95
+ continue;
96
+ // Locate every recognised phrase on the line with its position, so each reference can be
97
+ // attributed to the nearest phrase that precedes it (not just the first phrase on the line).
98
+ const phraseHits = [];
99
+ for (const p of DEP_PHRASES) {
100
+ const g = new RegExp(p.re.source, 'gi');
101
+ let pm;
102
+ while ((pm = g.exec(line)) !== null) {
103
+ phraseHits.push({ index: pm.index, type: p.type });
104
+ if (pm.index === g.lastIndex)
105
+ g.lastIndex++; // never spin on a zero-width match
106
+ }
107
+ }
108
+ if (!phraseHits.length)
109
+ continue;
110
+ phraseHits.sort((a, b) => a.index - b.index);
111
+ refRe.lastIndex = 0;
112
+ let m;
113
+ while ((m = refRe.exec(line)) !== null) {
114
+ // The governing phrase is the last one that starts before this reference.
115
+ let governing;
116
+ for (const h of phraseHits) {
117
+ if (h.index < m.index)
118
+ governing = h.type;
119
+ else
120
+ break;
121
+ }
122
+ if (!governing)
123
+ continue;
124
+ const owner = m[1] ?? contextOwner;
125
+ const repo = m[2] ?? contextRepo;
126
+ const externalId = githubIssueExternalId({ owner, repo, number: Number(m[3]) });
127
+ const key = `${governing}:${externalId}`;
128
+ if (seen.has(key))
129
+ continue;
130
+ seen.add(key);
131
+ out.push({ type: governing, externalId });
132
+ }
133
+ }
134
+ return out;
135
+ }
67
136
  /**
68
137
  * Build the GitHub issue-search text, scoping it to a single repo when a service's
69
138
  * repo is known. The `repo:owner/name` qualifier keeps hits from leaking in from
@@ -1 +1 @@
1
- {"version":3,"file":"github-issues.logic.js","sourceRoot":"","sources":["../../../src/modules/tasks/github-issues.logic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"github-issues.logic.js","sourceRoot":"","sources":["../../../src/modules/tasks/github-issues.logic.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { TaskSearchResult, TaskSourceDescriptor } from '@cat-factory/kernel';
1
+ import type { TaskDependencyLink, TaskSearchResult, TaskSourceDescriptor } from '@cat-factory/kernel';
2
2
  /** What the connect UI renders, and which credentials the provider needs. */
3
3
  export declare const JIRA_DESCRIPTOR: TaskSourceDescriptor;
4
4
  /**
@@ -16,6 +16,37 @@ export declare function parseJiraSearchResults(json: unknown, base: string): Tas
16
16
  * input but canonically upper-case). Returns null when nothing parses.
17
17
  */
18
18
  export declare function parseJiraRef(input: string): string | null;
19
+ /** Build the JQL that lists an epic's / parent's direct children, newest first. */
20
+ export declare function buildJiraChildrenJql(key: string): string;
21
+ /** Whether a Jira issue type name denotes an epic (case-insensitive). */
22
+ export declare function isJiraEpicType(issueTypeName: string | undefined): boolean;
23
+ /** One entry of a Jira issue's `issuelinks` field (the shape we read). */
24
+ export interface JiraIssueLink {
25
+ type?: {
26
+ name?: string;
27
+ inward?: string;
28
+ outward?: string;
29
+ };
30
+ inwardIssue?: {
31
+ key?: string;
32
+ };
33
+ outwardIssue?: {
34
+ key?: string;
35
+ };
36
+ }
37
+ /**
38
+ * Map a Jira issue's `issuelinks` onto normalized {@link TaskDependencyLink}s. Jira link
39
+ * types are phrased from the perspective of the OTHER issue: an `inwardIssue` reached via
40
+ * the type's `inward` phrase, an `outwardIssue` via the `outward` phrase. We classify by
41
+ * the phrase text:
42
+ * - inward "is blocked by" → this issue is `blockedBy` the inward issue
43
+ * - inward "is depended on by" → the inward issue depends on this → this `blocks` it
44
+ * - outward "blocks" → this issue `blocks` the outward issue
45
+ * - outward "depends on" → this issue is `blockedBy` the outward issue
46
+ * Anything we don't recognise as a blocking relation is recorded as `relates` (the
47
+ * importer skips those for sequencing). Lenient: malformed entries are dropped.
48
+ */
49
+ export declare function mapJiraIssueLinks(links: unknown): TaskDependencyLink[];
19
50
  /**
20
51
  * Convert an Atlassian Document Format node tree into lightweight Markdown: the
21
52
  * same `#`/`##`/`###` headings, `- ` list items and blank-line block boundaries
@@ -1 +1 @@
1
- {"version":3,"file":"jira.logic.d.ts","sourceRoot":"","sources":["../../../src/modules/tasks/jira.logic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AASjF,6EAA6E;AAC7E,eAAO,MAAM,eAAe,EAAE,oBAuB7B,CAAA;AAOD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD;AASD,uFAAuF;AACvF,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAgBtF;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAWzD;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAUnD"}
1
+ {"version":3,"file":"jira.logic.d.ts","sourceRoot":"","sources":["../../../src/modules/tasks/jira.logic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,qBAAqB,CAAA;AAS5B,6EAA6E;AAC7E,eAAO,MAAM,eAAe,EAAE,oBAuB7B,CAAA;AAOD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD;AASD,uFAAuF;AACvF,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAgBtF;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAWzD;AAED,mFAAmF;AACnF,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAKxD;AAED,yEAAyE;AACzE,wBAAgB,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAEzE;AAED,0EAA0E;AAC1E,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC3D,WAAW,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC9B,YAAY,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAChC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,kBAAkB,EAAE,CAgCtE;AAcD;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAUnD"}
@@ -82,6 +82,70 @@ export function parseJiraRef(input) {
82
82
  return issues[1].toUpperCase();
83
83
  return null;
84
84
  }
85
+ /** Build the JQL that lists an epic's / parent's direct children, newest first. */
86
+ export function buildJiraChildrenJql(key) {
87
+ // `parent = KEY` matches both next-gen epic children and classic sub-tasks; the legacy
88
+ // `"Epic Link" = KEY` covers classic-project epic children that don't use `parent`.
89
+ const k = escapeJql(key.trim());
90
+ return `(parent = "${k}" OR "Epic Link" = "${k}") ORDER BY created ASC`;
91
+ }
92
+ /** Whether a Jira issue type name denotes an epic (case-insensitive). */
93
+ export function isJiraEpicType(issueTypeName) {
94
+ return !!issueTypeName && /epic/i.test(issueTypeName);
95
+ }
96
+ /**
97
+ * Map a Jira issue's `issuelinks` onto normalized {@link TaskDependencyLink}s. Jira link
98
+ * types are phrased from the perspective of the OTHER issue: an `inwardIssue` reached via
99
+ * the type's `inward` phrase, an `outwardIssue` via the `outward` phrase. We classify by
100
+ * the phrase text:
101
+ * - inward "is blocked by" → this issue is `blockedBy` the inward issue
102
+ * - inward "is depended on by" → the inward issue depends on this → this `blocks` it
103
+ * - outward "blocks" → this issue `blocks` the outward issue
104
+ * - outward "depends on" → this issue is `blockedBy` the outward issue
105
+ * Anything we don't recognise as a blocking relation is recorded as `relates` (the
106
+ * importer skips those for sequencing). Lenient: malformed entries are dropped.
107
+ */
108
+ export function mapJiraIssueLinks(links) {
109
+ if (!Array.isArray(links))
110
+ return [];
111
+ const out = [];
112
+ const seen = new Set();
113
+ for (const raw of links) {
114
+ const inwardKey = raw?.inwardIssue?.key;
115
+ const outwardKey = raw?.outwardIssue?.key;
116
+ const inwardPhrase = (raw?.type?.inward ?? '').toLowerCase();
117
+ const outwardPhrase = (raw?.type?.outward ?? '').toLowerCase();
118
+ // The inward issue is reached via the inward phrase ("is blocked by" / "is depended on by").
119
+ // "is blocked by X" → this is blockedBy X; "is depended on by X" → X depends on this, so
120
+ // this BLOCKS X (NOT `dependsOn` — that direction is the exact reverse).
121
+ if (inwardKey) {
122
+ const type = /block/.test(inwardPhrase)
123
+ ? 'blockedBy'
124
+ : /depend/.test(inwardPhrase)
125
+ ? 'blocks'
126
+ : 'relates';
127
+ pushLink(out, seen, type, inwardKey);
128
+ }
129
+ // The outward issue is reached via the outward phrase ("blocks" / "depends on").
130
+ if (outwardKey) {
131
+ const type = /block/.test(outwardPhrase)
132
+ ? 'blocks'
133
+ : /depend/.test(outwardPhrase)
134
+ ? // "this depends on outward" → this is blocked by the outward issue.
135
+ 'blockedBy'
136
+ : 'relates';
137
+ pushLink(out, seen, type, outwardKey);
138
+ }
139
+ }
140
+ return out;
141
+ }
142
+ function pushLink(out, seen, type, externalId) {
143
+ const key = `${type}:${externalId}`;
144
+ if (seen.has(key))
145
+ return;
146
+ seen.add(key);
147
+ out.push({ type, externalId });
148
+ }
85
149
  /**
86
150
  * Convert an Atlassian Document Format node tree into lightweight Markdown: the
87
151
  * same `#`/`##`/`###` headings, `- ` list items and blank-line block boundaries
@@ -1 +1 @@
1
- {"version":3,"file":"jira.logic.js","sourceRoot":"","sources":["../../../src/modules/tasks/jira.logic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jira.logic.js","sourceRoot":"","sources":["../../../src/modules/tasks/jira.logic.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cat-factory/integrations",
3
- "version": "0.13.0",
3
+ "version": "0.14.0",
4
4
  "description": "External-system integration domain logic for the Agent Architecture Board (GitHub, documents, tasks, environments, runners).",
5
5
  "repository": {
6
6
  "type": "git",
@@ -25,8 +25,8 @@
25
25
  },
26
26
  "dependencies": {
27
27
  "ai": "^6.0.209",
28
- "@cat-factory/contracts": "0.18.0",
29
- "@cat-factory/kernel": "0.17.0"
28
+ "@cat-factory/contracts": "0.19.0",
29
+ "@cat-factory/kernel": "0.18.0"
30
30
  },
31
31
  "devDependencies": {
32
32
  "typescript": "7.0.1-rc",