github-issue-tower-defence-management 1.143.5 → 1.144.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.
Files changed (49) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/bin/adapter/entry-points/cli/index.js +2 -0
  3. package/bin/adapter/entry-points/cli/index.js.map +1 -1
  4. package/bin/adapter/entry-points/console/consoleItemUrlLookup.js +88 -0
  5. package/bin/adapter/entry-points/console/consoleItemUrlLookup.js.map +1 -0
  6. package/bin/adapter/entry-points/console/consoleOperationApi.js +44 -1
  7. package/bin/adapter/entry-points/console/consoleOperationApi.js.map +1 -1
  8. package/bin/adapter/entry-points/console/ui-dist/assets/index-y6LyqXlu.js +82 -0
  9. package/bin/adapter/entry-points/console/ui-dist/index.html +1 -1
  10. package/bin/adapter/entry-points/console/webServer.js +3 -0
  11. package/bin/adapter/entry-points/console/webServer.js.map +1 -1
  12. package/bin/adapter/repositories/LocalCommandIssueAttachmentRepository.js +75 -0
  13. package/bin/adapter/repositories/LocalCommandIssueAttachmentRepository.js.map +1 -0
  14. package/bin/domain/usecases/adapter-interfaces/IssueAttachmentRepository.js +3 -0
  15. package/bin/domain/usecases/adapter-interfaces/IssueAttachmentRepository.js.map +1 -0
  16. package/package.json +1 -1
  17. package/src/adapter/entry-points/cli/index.ts +4 -0
  18. package/src/adapter/entry-points/console/consoleItemUrlLookup.test.ts +63 -0
  19. package/src/adapter/entry-points/console/consoleItemUrlLookup.ts +66 -0
  20. package/src/adapter/entry-points/console/consoleOperationApi.test.ts +155 -0
  21. package/src/adapter/entry-points/console/consoleOperationApi.ts +56 -0
  22. package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleCommentComposer.stories.tsx +17 -0
  23. package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleCommentComposer.test.tsx +149 -1
  24. package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleCommentComposer.tsx +107 -1
  25. package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleOperations.ts +22 -0
  26. package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleTabData.test.ts +41 -2
  27. package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleTabData.ts +44 -28
  28. package/src/adapter/entry-points/console/ui/src/features/console/lib/consoleApi.ts +35 -0
  29. package/src/adapter/entry-points/console/ui/src/features/console/pages/ConsoleItemDetailContainer.test.tsx +1 -0
  30. package/src/adapter/entry-points/console/ui/src/features/console/pages/ConsoleItemDetailContainer.tsx +1 -0
  31. package/src/adapter/entry-points/console/ui-dist/assets/index-y6LyqXlu.js +82 -0
  32. package/src/adapter/entry-points/console/ui-dist/index.html +1 -1
  33. package/src/adapter/entry-points/console/webServer.ts +6 -0
  34. package/src/adapter/repositories/LocalCommandIssueAttachmentRepository.test.ts +136 -0
  35. package/src/adapter/repositories/LocalCommandIssueAttachmentRepository.ts +96 -0
  36. package/src/domain/usecases/adapter-interfaces/IssueAttachmentRepository.ts +9 -0
  37. package/types/adapter/entry-points/cli/index.d.ts.map +1 -1
  38. package/types/adapter/entry-points/console/consoleItemUrlLookup.d.ts +2 -0
  39. package/types/adapter/entry-points/console/consoleItemUrlLookup.d.ts.map +1 -0
  40. package/types/adapter/entry-points/console/consoleOperationApi.d.ts +3 -0
  41. package/types/adapter/entry-points/console/consoleOperationApi.d.ts.map +1 -1
  42. package/types/adapter/entry-points/console/webServer.d.ts +2 -0
  43. package/types/adapter/entry-points/console/webServer.d.ts.map +1 -1
  44. package/types/adapter/repositories/LocalCommandIssueAttachmentRepository.d.ts +15 -0
  45. package/types/adapter/repositories/LocalCommandIssueAttachmentRepository.d.ts.map +1 -0
  46. package/types/domain/usecases/adapter-interfaces/IssueAttachmentRepository.d.ts +9 -0
  47. package/types/domain/usecases/adapter-interfaces/IssueAttachmentRepository.d.ts.map +1 -0
  48. package/bin/adapter/entry-points/console/ui-dist/assets/index-fTEmrrJ-.js +0 -81
  49. package/src/adapter/entry-points/console/ui-dist/assets/index-fTEmrrJ-.js +0 -81
@@ -4,7 +4,7 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <title>TDPM Console</title>
7
- <script type="module" crossorigin src="/assets/index-fTEmrrJ-.js"></script>
7
+ <script type="module" crossorigin src="/assets/index-y6LyqXlu.js"></script>
8
8
  <link rel="stylesheet" crossorigin href="/assets/index-CKX2ny-z.css">
9
9
  </head>
10
10
  <body>
@@ -376,6 +376,8 @@ const dispatchOperation = (context, requestPath, body) => {
376
376
  return (0, consoleOperationApi_1.handleComment)(context, body);
377
377
  case '/api/reviewcomment':
378
378
  return (0, consoleOperationApi_1.handleReviewComment)(context, body);
379
+ case '/api/upload':
380
+ return (0, consoleOperationApi_1.handleAttachmentUpload)(context, body);
379
381
  default:
380
382
  return null;
381
383
  }
@@ -394,6 +396,7 @@ const handleOperationApi = async (options, requestPath, body) => {
394
396
  resolveProject,
395
397
  isPjcodeConfigured,
396
398
  consoleDataOutputDir: options.consoleDataOutputDir,
399
+ issueAttachmentRepository: options.issueAttachmentRepository ?? null,
397
400
  };
398
401
  const dispatched = dispatchOperation(context, requestPath, body);
399
402
  if (dispatched === null) {
@@ -1 +1 @@
1
- {"version":3,"file":"webServer.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/console/webServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webServer.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/console/webServer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LocalCommandIssueAttachmentRepository = exports.relabelAttachmentMarkdown = exports.resolveAttachmentExtension = exports.sanitizeAttachmentFileName = exports.UPLOAD_FILE_BASE_NAME = exports.ALLOWED_ATTACHMENT_EXTENSIONS = exports.UPLOAD_COMMAND = void 0;
4
+ const promises_1 = require("fs/promises");
5
+ const os_1 = require("os");
6
+ const path_1 = require("path");
7
+ exports.UPLOAD_COMMAND = 'upload-file-to-gh-issue';
8
+ exports.ALLOWED_ATTACHMENT_EXTENSIONS = [
9
+ '.png',
10
+ '.jpg',
11
+ '.jpeg',
12
+ '.gif',
13
+ '.webp',
14
+ '.svg',
15
+ '.pdf',
16
+ '.txt',
17
+ '.md',
18
+ '.log',
19
+ '.csv',
20
+ '.json',
21
+ '.zip',
22
+ '.mov',
23
+ '.mp4',
24
+ ];
25
+ exports.UPLOAD_FILE_BASE_NAME = 'attachment';
26
+ const sanitizeAttachmentFileName = (fileName) => {
27
+ const base = fileName.split('/').pop() ?? '';
28
+ const sanitized = base.replace(/[^A-Za-z0-9._-]/g, '_');
29
+ return sanitized.length === 0 ? exports.UPLOAD_FILE_BASE_NAME : sanitized;
30
+ };
31
+ exports.sanitizeAttachmentFileName = sanitizeAttachmentFileName;
32
+ const resolveAttachmentExtension = (fileName) => {
33
+ const lower = (0, exports.sanitizeAttachmentFileName)(fileName).toLowerCase();
34
+ const matched = exports.ALLOWED_ATTACHMENT_EXTENSIONS.find((extension) => lower.endsWith(extension));
35
+ return matched === undefined ? '' : matched;
36
+ };
37
+ exports.resolveAttachmentExtension = resolveAttachmentExtension;
38
+ const relabelAttachmentMarkdown = (markdown, label) => {
39
+ const match = /^(!?)\[[^\]]*\]\((.*)\)$/.exec(markdown);
40
+ if (match === null) {
41
+ return markdown;
42
+ }
43
+ return `${match[1]}[${label}](${match[2]})`;
44
+ };
45
+ exports.relabelAttachmentMarkdown = relabelAttachmentMarkdown;
46
+ class LocalCommandIssueAttachmentRepository {
47
+ constructor(localCommandRunner, temporaryDirectoryRoot = (0, os_1.tmpdir)()) {
48
+ this.localCommandRunner = localCommandRunner;
49
+ this.temporaryDirectoryRoot = temporaryDirectoryRoot;
50
+ }
51
+ async uploadAttachment(request) {
52
+ const directory = await (0, promises_1.mkdtemp)((0, path_1.join)(this.temporaryDirectoryRoot, 'console-attachment-'));
53
+ const filePath = (0, path_1.join)(directory, `${exports.UPLOAD_FILE_BASE_NAME}${(0, exports.resolveAttachmentExtension)(request.fileName)}`);
54
+ try {
55
+ await (0, promises_1.writeFile)(filePath, request.content);
56
+ const result = await this.localCommandRunner.runCommand(exports.UPLOAD_COMMAND, [
57
+ filePath,
58
+ request.issueOrPullRequestUrl,
59
+ ]);
60
+ if (result.exitCode !== 0) {
61
+ throw new Error(`${exports.UPLOAD_COMMAND} failed with exit code ${result.exitCode}: ${result.stderr.trim()}`);
62
+ }
63
+ const markdown = result.stdout.trim();
64
+ if (markdown.length === 0) {
65
+ throw new Error(`${exports.UPLOAD_COMMAND} returned no markdown`);
66
+ }
67
+ return (0, exports.relabelAttachmentMarkdown)(markdown, (0, exports.sanitizeAttachmentFileName)(request.fileName));
68
+ }
69
+ finally {
70
+ await (0, promises_1.rm)(directory, { recursive: true, force: true });
71
+ }
72
+ }
73
+ }
74
+ exports.LocalCommandIssueAttachmentRepository = LocalCommandIssueAttachmentRepository;
75
+ //# sourceMappingURL=LocalCommandIssueAttachmentRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LocalCommandIssueAttachmentRepository.js","sourceRoot":"","sources":["../../../src/adapter/repositories/LocalCommandIssueAttachmentRepository.ts"],"names":[],"mappings":";;;AAAA,0CAAqD;AACrD,2BAA4B;AAC5B,+BAA4B;AAOf,QAAA,cAAc,GAAG,yBAAyB,CAAC;AAE3C,QAAA,6BAA6B,GAAG;IAC3C,MAAM;IACN,MAAM;IACN,OAAO;IACP,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,MAAM;CACE,CAAC;AAEE,QAAA,qBAAqB,GAAG,YAAY,CAAC;AAE3C,MAAM,0BAA0B,GAAG,CAAC,QAAgB,EAAU,EAAE;IACrE,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;IAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;IACxD,OAAO,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,6BAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;AACpE,CAAC,CAAC;AAJW,QAAA,0BAA0B,8BAIrC;AAEK,MAAM,0BAA0B,GAAG,CAAC,QAAgB,EAAU,EAAE;IACrE,MAAM,KAAK,GAAG,IAAA,kCAA0B,EAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IACjE,MAAM,OAAO,GAAG,qCAA6B,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAC/D,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAC1B,CAAC;IACF,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;AAC9C,CAAC,CAAC;AANW,QAAA,0BAA0B,8BAMrC;AAEK,MAAM,yBAAyB,GAAG,CACvC,QAAgB,EAChB,KAAa,EACL,EAAE;IACV,MAAM,KAAK,GAAG,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;AAC9C,CAAC,CAAC;AATW,QAAA,yBAAyB,6BASpC;AAEF,MAAa,qCAAqC;IAChD,YACmB,kBAAsC,EACtC,yBAAiC,IAAA,WAAM,GAAE;QADzC,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,2BAAsB,GAAtB,sBAAsB,CAAmB;IACzD,CAAC;IAEJ,KAAK,CAAC,gBAAgB,CACpB,OAAqC;QAErC,MAAM,SAAS,GAAG,MAAM,IAAA,kBAAO,EAC7B,IAAA,WAAI,EAAC,IAAI,CAAC,sBAAsB,EAAE,qBAAqB,CAAC,CACzD,CAAC;QACF,MAAM,QAAQ,GAAG,IAAA,WAAI,EACnB,SAAS,EACT,GAAG,6BAAqB,GAAG,IAAA,kCAA0B,EAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAC1E,CAAC;QACF,IAAI,CAAC;YACH,MAAM,IAAA,oBAAS,EAAC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,sBAAc,EAAE;gBACtE,QAAQ;gBACR,OAAO,CAAC,qBAAqB;aAC9B,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CACb,GAAG,sBAAc,0BAA0B,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CACtF,CAAC;YACJ,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACtC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,GAAG,sBAAc,uBAAuB,CAAC,CAAC;YAC5D,CAAC;YACD,OAAO,IAAA,iCAAyB,EAC9B,QAAQ,EACR,IAAA,kCAA0B,EAAC,OAAO,CAAC,QAAQ,CAAC,CAC7C,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,MAAM,IAAA,aAAE,EAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;CACF;AAvCD,sFAuCC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IssueAttachmentRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IssueAttachmentRepository.js","sourceRoot":"","sources":["../../../../src/domain/usecases/adapter-interfaces/IssueAttachmentRepository.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "github-issue-tower-defence-management",
3
- "version": "1.143.5",
3
+ "version": "1.144.0",
4
4
  "description": "",
5
5
  "main": "bin/index.js",
6
6
  "scripts": {
@@ -28,6 +28,7 @@ import { ApiV3CheerioRestIssueRepository } from '../../repositories/issue/ApiV3C
28
28
  import { LocalStorageCacheRepository } from '../../repositories/LocalStorageCacheRepository';
29
29
  import { SystemDateRepository } from '../../repositories/SystemDateRepository';
30
30
  import { BaseGitHubRepository } from '../../repositories/BaseGitHubRepository';
31
+ import { LocalCommandIssueAttachmentRepository } from '../../repositories/LocalCommandIssueAttachmentRepository';
31
32
  import { NodeLocalCommandRunner } from '../../repositories/NodeLocalCommandRunner';
32
33
  import { NodeTmuxSessionRepository } from '../../repositories/NodeTmuxSessionRepository';
33
34
  import { ProcTakeOwnershipSpawnRepository } from '../../repositories/ProcTakeOwnershipSpawnRepository';
@@ -808,6 +809,9 @@ const runServeWeb = async (options: ServeWebOptions): Promise<void> => {
808
809
  issueRepository,
809
810
  resolveProject,
810
811
  isPjcodeConfigured,
812
+ issueAttachmentRepository: new LocalCommandIssueAttachmentRepository(
813
+ new NodeLocalCommandRunner(),
814
+ ),
811
815
  issueTitleStateCache: new IssueTitleStateCache(),
812
816
  pullRequestStatusCache: new PullRequestStatusCache(),
813
817
  port,
@@ -0,0 +1,63 @@
1
+ import * as fs from 'fs';
2
+ import * as os from 'os';
3
+ import * as path from 'path';
4
+ import { findConsoleItemUrl } from './consoleItemUrlLookup';
5
+
6
+ describe('findConsoleItemUrl', () => {
7
+ let baseDir: string;
8
+
9
+ beforeEach(() => {
10
+ baseDir = fs.mkdtempSync(path.join(os.tmpdir(), 'console-lookup-'));
11
+ });
12
+
13
+ afterEach(() => {
14
+ fs.rmSync(baseDir, { recursive: true, force: true });
15
+ });
16
+
17
+ const writeList = (tab: string, items: unknown): void => {
18
+ const dir = path.join(baseDir, 'umino', tab);
19
+ fs.mkdirSync(dir, { recursive: true });
20
+ fs.writeFileSync(path.join(dir, 'list.json'), JSON.stringify({ items }));
21
+ };
22
+
23
+ it('returns the stored url when the requested url is listed in a tab', () => {
24
+ writeList('prs', [{ url: 'https://github.com/o/r/issues/1' }]);
25
+ expect(
26
+ findConsoleItemUrl(baseDir, 'umino', 'https://github.com/o/r/issues/1'),
27
+ ).toBe('https://github.com/o/r/issues/1');
28
+ });
29
+
30
+ it('returns null when no tab lists the requested url', () => {
31
+ writeList('prs', [{ url: 'https://github.com/o/r/issues/1' }]);
32
+ expect(
33
+ findConsoleItemUrl(baseDir, 'umino', 'https://github.com/o/r/issues/2'),
34
+ ).toBeNull();
35
+ });
36
+
37
+ it('returns null when the project directory does not exist', () => {
38
+ expect(
39
+ findConsoleItemUrl(baseDir, 'unknown', 'https://github.com/o/r/issues/1'),
40
+ ).toBeNull();
41
+ });
42
+
43
+ it('ignores a tab file that is not valid json', () => {
44
+ const dir = path.join(baseDir, 'umino', 'triage');
45
+ fs.mkdirSync(dir, { recursive: true });
46
+ fs.writeFileSync(path.join(dir, 'list.json'), 'not json');
47
+ writeList('prs', [{ url: 'https://github.com/o/r/issues/1' }]);
48
+ expect(
49
+ findConsoleItemUrl(baseDir, 'umino', 'https://github.com/o/r/issues/1'),
50
+ ).toBe('https://github.com/o/r/issues/1');
51
+ });
52
+
53
+ it('ignores entries without a url string', () => {
54
+ writeList('prs', [
55
+ { url: 1 },
56
+ null,
57
+ { url: 'https://github.com/o/r/pull/9' },
58
+ ]);
59
+ expect(
60
+ findConsoleItemUrl(baseDir, 'umino', 'https://github.com/o/r/pull/9'),
61
+ ).toBe('https://github.com/o/r/pull/9');
62
+ });
63
+ });
@@ -0,0 +1,66 @@
1
+ import * as fs from 'fs';
2
+ import * as path from 'path';
3
+ import { CONSOLE_DONE_TAB_NAMES } from './consoleDoneStore';
4
+
5
+ const CONSOLE_LIST_FILE_NAME = 'list.json';
6
+
7
+ const isRecord = (value: unknown): value is Record<string, unknown> =>
8
+ value !== null && typeof value === 'object' && !Array.isArray(value);
9
+
10
+ const readListItemUrls = (
11
+ consoleDataOutputDir: string,
12
+ pjcode: string,
13
+ tab: string,
14
+ ): string[] => {
15
+ const filePath = path.join(
16
+ consoleDataOutputDir,
17
+ pjcode,
18
+ tab,
19
+ CONSOLE_LIST_FILE_NAME,
20
+ );
21
+ let raw: string;
22
+ try {
23
+ raw = fs.readFileSync(filePath, 'utf-8');
24
+ } catch {
25
+ return [];
26
+ }
27
+ let parsed: unknown;
28
+ try {
29
+ parsed = JSON.parse(raw);
30
+ } catch {
31
+ return [];
32
+ }
33
+ if (!isRecord(parsed)) {
34
+ return [];
35
+ }
36
+ const items = parsed.items;
37
+ if (!Array.isArray(items)) {
38
+ return [];
39
+ }
40
+ const urls: string[] = [];
41
+ for (const item of items) {
42
+ if (!isRecord(item)) {
43
+ continue;
44
+ }
45
+ const url = item.url;
46
+ if (typeof url === 'string' && url.length > 0) {
47
+ urls.push(url);
48
+ }
49
+ }
50
+ return urls;
51
+ };
52
+
53
+ export const findConsoleItemUrl = (
54
+ consoleDataOutputDir: string,
55
+ pjcode: string,
56
+ requestedUrl: string,
57
+ ): string | null => {
58
+ for (const tab of CONSOLE_DONE_TAB_NAMES) {
59
+ for (const url of readListItemUrls(consoleDataOutputDir, pjcode, tab)) {
60
+ if (url === requestedUrl) {
61
+ return url;
62
+ }
63
+ }
64
+ }
65
+ return null;
66
+ };
@@ -8,6 +8,7 @@ import { Issue } from '../../../domain/entities/Issue';
8
8
  import {
9
9
  ConsoleOperationContext,
10
10
  ConsoleProjectBinding,
11
+ handleAttachmentUpload,
11
12
  handleComment,
12
13
  handleIntmux,
13
14
  handleReview,
@@ -76,6 +77,7 @@ describe('consoleOperationApi', () => {
76
77
  pjcode === 'umino' ? { pjcode, project } : null,
77
78
  isPjcodeConfigured: (pjcode: string) => pjcode === 'umino',
78
79
  consoleDataOutputDir: baseDir,
80
+ issueAttachmentRepository: null,
79
81
  };
80
82
  });
81
83
 
@@ -87,6 +89,7 @@ describe('consoleOperationApi', () => {
87
89
  pjcode === 'umino' ? { pjcode, project: nextProject } : null,
88
90
  isPjcodeConfigured: (pjcode: string) => pjcode === 'umino',
89
91
  consoleDataOutputDir: baseDir,
92
+ issueAttachmentRepository: null,
90
93
  });
91
94
 
92
95
  afterEach(() => {
@@ -509,6 +512,7 @@ describe('consoleOperationApi', () => {
509
512
  resolveProject: resolveProjectSpy,
510
513
  isPjcodeConfigured: (pjcode: string) => pjcode === 'umino',
511
514
  consoleDataOutputDir: baseDir,
515
+ issueAttachmentRepository: null,
512
516
  };
513
517
  });
514
518
 
@@ -753,6 +757,7 @@ describe('consoleOperationApi', () => {
753
757
  isPjcodeConfigured: (pjcode: string) =>
754
758
  pjcode === 'umino' || pjcode === 'xmile',
755
759
  consoleDataOutputDir: baseDir,
760
+ issueAttachmentRepository: null,
756
761
  };
757
762
  const response = await handleTriage(multiContext, {
758
763
  pjcode: 'xmile',
@@ -959,4 +964,154 @@ describe('consoleOperationApi', () => {
959
964
  });
960
965
  });
961
966
  });
967
+
968
+ describe('handleAttachmentUpload', () => {
969
+ const listItemUrl = 'https://github.com/o/r/issues/1';
970
+
971
+ const writeListWithItem = (url: string): void => {
972
+ const dir = path.join(baseDir, 'umino', 'prs');
973
+ fs.mkdirSync(dir, { recursive: true });
974
+ fs.writeFileSync(
975
+ path.join(dir, 'list.json'),
976
+ JSON.stringify({ items: [{ url }] }),
977
+ );
978
+ };
979
+
980
+ beforeEach(() => {
981
+ writeListWithItem(listItemUrl);
982
+ });
983
+
984
+ const uploadContext = (
985
+ uploadAttachment: (request: {
986
+ issueOrPullRequestUrl: string;
987
+ fileName: string;
988
+ content: Uint8Array;
989
+ }) => Promise<string>,
990
+ ): ConsoleOperationContext => ({
991
+ ...context,
992
+ issueAttachmentRepository: { uploadAttachment },
993
+ });
994
+
995
+ it('uploads the decoded file and returns the markdown', async () => {
996
+ const received: {
997
+ issueOrPullRequestUrl: string;
998
+ fileName: string;
999
+ content: Uint8Array;
1000
+ }[] = [];
1001
+ const response = await handleAttachmentUpload(
1002
+ uploadContext(async (request) => {
1003
+ received.push(request);
1004
+ return '![shot](https://github.com/user-attachments/assets/abc)';
1005
+ }),
1006
+ {
1007
+ pjcode: 'umino',
1008
+ url: 'https://github.com/o/r/issues/1',
1009
+ fileName: 'shot.png',
1010
+ contentBase64: Buffer.from([1, 2, 3]).toString('base64'),
1011
+ },
1012
+ );
1013
+ expect(response).toEqual({
1014
+ statusCode: 200,
1015
+ body: {
1016
+ ok: true,
1017
+ markdown: '![shot](https://github.com/user-attachments/assets/abc)',
1018
+ },
1019
+ });
1020
+ expect(received).toHaveLength(1);
1021
+ expect(received[0].issueOrPullRequestUrl).toBe(
1022
+ 'https://github.com/o/r/issues/1',
1023
+ );
1024
+ expect(received[0].fileName).toBe('shot.png');
1025
+ expect(Array.from(received[0].content)).toEqual([1, 2, 3]);
1026
+ });
1027
+
1028
+ it('rejects a request without a url', async () => {
1029
+ const response = await handleAttachmentUpload(
1030
+ uploadContext(async () => 'unused'),
1031
+ { pjcode: 'umino', fileName: 'shot.png', contentBase64: 'AAEC' },
1032
+ );
1033
+ expect(response).toEqual({
1034
+ statusCode: 400,
1035
+ body: { error: 'url is required' },
1036
+ });
1037
+ });
1038
+
1039
+ it('rejects a url that is not a github issue or pull request url', async () => {
1040
+ const response = await handleAttachmentUpload(
1041
+ uploadContext(async () => 'unused'),
1042
+ {
1043
+ pjcode: 'umino',
1044
+ url: 'https://example.com/o/r/issues/1; rm -rf /',
1045
+ fileName: 'shot.png',
1046
+ contentBase64: 'AAEC',
1047
+ },
1048
+ );
1049
+ expect(response).toEqual({
1050
+ statusCode: 400,
1051
+ body: { error: 'url must be a github issue or pull request url' },
1052
+ });
1053
+ });
1054
+
1055
+ it('rejects a request without a fileName', async () => {
1056
+ const response = await handleAttachmentUpload(
1057
+ uploadContext(async () => 'unused'),
1058
+ {
1059
+ pjcode: 'umino',
1060
+ url: 'https://github.com/o/r/issues/1',
1061
+ contentBase64: 'AAEC',
1062
+ },
1063
+ );
1064
+ expect(response).toEqual({
1065
+ statusCode: 400,
1066
+ body: { error: 'fileName is required' },
1067
+ });
1068
+ });
1069
+
1070
+ it('rejects a request without contentBase64', async () => {
1071
+ const response = await handleAttachmentUpload(
1072
+ uploadContext(async () => 'unused'),
1073
+ {
1074
+ pjcode: 'umino',
1075
+ url: 'https://github.com/o/r/issues/1',
1076
+ fileName: 'shot.png',
1077
+ },
1078
+ );
1079
+ expect(response).toEqual({
1080
+ statusCode: 400,
1081
+ body: { error: 'contentBase64 is required' },
1082
+ });
1083
+ });
1084
+
1085
+ it('reports that upload is not configured when no repository is wired', async () => {
1086
+ const response = await handleAttachmentUpload(
1087
+ { ...context, issueAttachmentRepository: null },
1088
+ {
1089
+ pjcode: 'umino',
1090
+ url: 'https://github.com/o/r/issues/1',
1091
+ fileName: 'shot.png',
1092
+ contentBase64: 'AAEC',
1093
+ },
1094
+ );
1095
+ expect(response).toEqual({
1096
+ statusCode: 502,
1097
+ body: { error: 'attachment upload is not configured' },
1098
+ });
1099
+ });
1100
+
1101
+ it('rejects a url that is not listed as a console item of the project', async () => {
1102
+ const response = await handleAttachmentUpload(
1103
+ uploadContext(async () => 'unused'),
1104
+ {
1105
+ pjcode: 'umino',
1106
+ url: 'https://github.com/o/r/issues/9999',
1107
+ fileName: 'shot.png',
1108
+ contentBase64: 'AAEC',
1109
+ },
1110
+ );
1111
+ expect(response).toEqual({
1112
+ statusCode: 400,
1113
+ body: { error: 'url is not a console item of this project' },
1114
+ });
1115
+ });
1116
+ });
962
1117
  });
@@ -2,9 +2,11 @@ import {
2
2
  IssueRepository,
3
3
  PullRequestReviewCommentSide,
4
4
  } from '../../../domain/usecases/adapter-interfaces/IssueRepository';
5
+ import { IssueAttachmentRepository } from '../../../domain/usecases/adapter-interfaces/IssueAttachmentRepository';
5
6
  import { Project } from '../../../domain/entities/Project';
6
7
  import { Issue } from '../../../domain/entities/Issue';
7
8
  import { recordDoneProjectItemIdAcrossTabs } from './consoleDoneStore';
9
+ import { findConsoleItemUrl } from './consoleItemUrlLookup';
8
10
 
9
11
  export const AWAITING_WORKSPACE_STATUS_NAME = 'awaiting workspace';
10
12
  export const IN_TMUX_BY_HUMAN_STATUS_NAME = 'in tmux by human';
@@ -25,6 +27,7 @@ export type ConsoleOperationContext = {
25
27
  resolveProject: ConsoleProjectResolver;
26
28
  isPjcodeConfigured: ConsolePjcodeValidator;
27
29
  consoleDataOutputDir: string | null;
30
+ issueAttachmentRepository: IssueAttachmentRepository | null;
28
31
  };
29
32
 
30
33
  export type ConsoleOperationResponse = {
@@ -53,6 +56,11 @@ const isNonEmptyString = (value: unknown): value is string =>
53
56
  const isPullRequestUrl = (url: string): boolean =>
54
57
  /github\.com\/[^/]+\/[^/]+\/pull\/\d+/.test(url);
55
58
 
59
+ const isValidIssueOrPullRequestUrl = (url: string): boolean =>
60
+ /^https:\/\/github\.com\/[A-Za-z0-9._-]+\/[A-Za-z0-9._-]+\/(issues|pull)\/\d+$/.test(
61
+ url,
62
+ );
63
+
56
64
  const isReviewCommentSide = (
57
65
  value: unknown,
58
66
  ): value is PullRequestReviewCommentSide =>
@@ -399,6 +407,54 @@ export const handleComment = async (
399
407
  };
400
408
  };
401
409
 
410
+ export const handleAttachmentUpload = async (
411
+ context: ConsoleOperationContext,
412
+ body: Record<string, unknown>,
413
+ ): Promise<ConsoleOperationResponse> => {
414
+ const url = body.url;
415
+ const fileName = body.fileName;
416
+ const contentBase64 = body.contentBase64;
417
+ if (!isNonEmptyString(url)) {
418
+ return badRequest('url is required');
419
+ }
420
+ if (!isValidIssueOrPullRequestUrl(url)) {
421
+ return badRequest('url must be a github issue or pull request url');
422
+ }
423
+ if (!isNonEmptyString(fileName)) {
424
+ return badRequest('fileName is required');
425
+ }
426
+ if (!isNonEmptyString(contentBase64)) {
427
+ return badRequest('contentBase64 is required');
428
+ }
429
+ const pjcodeResult = resolveConfiguredPjcode(context, body);
430
+ if (typeof pjcodeResult !== 'string') {
431
+ return pjcodeResult;
432
+ }
433
+ if (context.consoleDataOutputDir === null) {
434
+ return badGateway('console data output dir is not configured');
435
+ }
436
+ const knownUrl = findConsoleItemUrl(
437
+ context.consoleDataOutputDir,
438
+ pjcodeResult,
439
+ url,
440
+ );
441
+ if (knownUrl === null) {
442
+ return badRequest('url is not a console item of this project');
443
+ }
444
+ if (context.issueAttachmentRepository === null) {
445
+ return badGateway('attachment upload is not configured');
446
+ }
447
+ const markdown = await context.issueAttachmentRepository.uploadAttachment({
448
+ issueOrPullRequestUrl: knownUrl,
449
+ fileName,
450
+ content: Buffer.from(contentBase64, 'base64'),
451
+ });
452
+ return {
453
+ statusCode: 200,
454
+ body: { ok: true, markdown },
455
+ };
456
+ };
457
+
402
458
  export const handleReviewComment = async (
403
459
  context: ConsoleOperationContext,
404
460
  body: Record<string, unknown>,
@@ -28,3 +28,20 @@ export const IssueComposerOpen: Story = {
28
28
  export const PullRequestComposerCollapsed: Story = {
29
29
  args: { isPr: true },
30
30
  };
31
+
32
+ export const IssueComposerWithFileUpload: Story = {
33
+ args: {
34
+ isPr: false,
35
+ onUploadFile: async (file: File) =>
36
+ `![${file.name}](https://github.com/user-attachments/assets/9f0b1c3d-4e5f-4a6b-8c7d-1e2f3a4b5c6d)`,
37
+ },
38
+ };
39
+
40
+ export const IssueComposerUploadFailure: Story = {
41
+ args: {
42
+ isPr: false,
43
+ onUploadFile: async () => {
44
+ throw new Error('No GitHub web session is available');
45
+ },
46
+ },
47
+ };