@pome-sh/cli 0.16.0 → 0.17.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 (78) hide show
  1. package/dist/build-info.json +3 -3
  2. package/dist/src/cli/checks-add.d.ts +2 -7
  3. package/dist/src/cli/checks-add.js +10 -24
  4. package/dist/src/cli/vocabulary-skew.d.ts +64 -0
  5. package/dist/src/cli/vocabulary-skew.js +187 -0
  6. package/dist/src/twin/githubCloneAdapter.d.ts +1 -0
  7. package/node_modules/@pome-sh/twin-github/FIDELITY.md +14 -0
  8. package/node_modules/@pome-sh/twin-github/dist/src/check-pulls.d.ts +4 -0
  9. package/node_modules/@pome-sh/twin-github/dist/src/check-pulls.js +93 -0
  10. package/node_modules/@pome-sh/twin-github/dist/src/check-pulls.js.map +1 -1
  11. package/node_modules/@pome-sh/twin-github/dist/src/check-state.d.ts +1 -0
  12. package/node_modules/@pome-sh/twin-github/dist/src/check-state.js.map +1 -1
  13. package/node_modules/@pome-sh/twin-github/dist/src/checks.d.ts +3 -0
  14. package/node_modules/@pome-sh/twin-github/dist/src/checks.js +2 -1
  15. package/node_modules/@pome-sh/twin-github/dist/src/checks.js.map +1 -1
  16. package/node_modules/@pome-sh/twin-github/dist/src/db.js +46 -4
  17. package/node_modules/@pome-sh/twin-github/dist/src/db.js.map +1 -1
  18. package/node_modules/@pome-sh/twin-github/dist/src/domain/github-domain.d.ts +3 -0
  19. package/node_modules/@pome-sh/twin-github/dist/src/domain/github-domain.js +49 -1
  20. package/node_modules/@pome-sh/twin-github/dist/src/domain/github-domain.js.map +1 -1
  21. package/node_modules/@pome-sh/twin-github/dist/src/domain/issues.js +15 -5
  22. package/node_modules/@pome-sh/twin-github/dist/src/domain/issues.js.map +1 -1
  23. package/node_modules/@pome-sh/twin-github/dist/src/serializers.d.ts +1 -1
  24. package/node_modules/@pome-sh/twin-github/dist/src/serializers.js +8 -2
  25. package/node_modules/@pome-sh/twin-github/dist/src/serializers.js.map +1 -1
  26. package/node_modules/@pome-sh/twin-github/package.json +1 -1
  27. package/node_modules/@pome-sh/twin-linear/CHANGELOG.md +101 -0
  28. package/node_modules/@pome-sh/twin-linear/dist/src/db.d.ts +6 -0
  29. package/node_modules/@pome-sh/twin-linear/dist/src/db.js +53 -4
  30. package/node_modules/@pome-sh/twin-linear/dist/src/db.js.map +1 -1
  31. package/node_modules/@pome-sh/twin-linear/dist/src/domain/agents.d.ts +16 -13
  32. package/node_modules/@pome-sh/twin-linear/dist/src/domain/agents.js +16 -12
  33. package/node_modules/@pome-sh/twin-linear/dist/src/domain/agents.js.map +1 -1
  34. package/node_modules/@pome-sh/twin-linear/dist/src/domain/comments.js +1 -1
  35. package/node_modules/@pome-sh/twin-linear/dist/src/domain/comments.js.map +1 -1
  36. package/node_modules/@pome-sh/twin-linear/dist/src/domain/documents.js +8 -8
  37. package/node_modules/@pome-sh/twin-linear/dist/src/domain/documents.js.map +1 -1
  38. package/node_modules/@pome-sh/twin-linear/dist/src/domain/issues.js +20 -17
  39. package/node_modules/@pome-sh/twin-linear/dist/src/domain/issues.js.map +1 -1
  40. package/node_modules/@pome-sh/twin-linear/dist/src/domain/labels.js +1 -1
  41. package/node_modules/@pome-sh/twin-linear/dist/src/domain/labels.js.map +1 -1
  42. package/node_modules/@pome-sh/twin-linear/dist/src/domain/linear-domain.d.ts +4 -17
  43. package/node_modules/@pome-sh/twin-linear/dist/src/domain/linear-domain.js.map +1 -1
  44. package/node_modules/@pome-sh/twin-linear/dist/src/domain/normalize.d.ts +12 -2
  45. package/node_modules/@pome-sh/twin-linear/dist/src/domain/normalize.js +28 -5
  46. package/node_modules/@pome-sh/twin-linear/dist/src/domain/normalize.js.map +1 -1
  47. package/node_modules/@pome-sh/twin-linear/dist/src/domain/projects-cycles.js +1 -1
  48. package/node_modules/@pome-sh/twin-linear/dist/src/domain/projects-cycles.js.map +1 -1
  49. package/node_modules/@pome-sh/twin-linear/dist/src/domain/rows.d.ts +3 -3
  50. package/node_modules/@pome-sh/twin-linear/dist/src/domain/rows.js +4 -3
  51. package/node_modules/@pome-sh/twin-linear/dist/src/domain/rows.js.map +1 -1
  52. package/node_modules/@pome-sh/twin-linear/dist/src/graphql/formatters.js +3 -3
  53. package/node_modules/@pome-sh/twin-linear/dist/src/graphql/formatters.js.map +1 -1
  54. package/node_modules/@pome-sh/twin-linear/dist/src/graphql/mutation-inputs.d.ts +30 -12
  55. package/node_modules/@pome-sh/twin-linear/dist/src/graphql/mutation-inputs.js +33 -28
  56. package/node_modules/@pome-sh/twin-linear/dist/src/graphql/mutation-inputs.js.map +1 -1
  57. package/node_modules/@pome-sh/twin-linear/dist/src/graphql/resolvers.js +2 -2
  58. package/node_modules/@pome-sh/twin-linear/dist/src/graphql/resolvers.js.map +1 -1
  59. package/node_modules/@pome-sh/twin-linear/dist/src/graphql/schema.js +31 -13
  60. package/node_modules/@pome-sh/twin-linear/dist/src/graphql/schema.js.map +1 -1
  61. package/node_modules/@pome-sh/twin-linear/dist/src/state.js +4 -4
  62. package/node_modules/@pome-sh/twin-linear/dist/src/state.js.map +1 -1
  63. package/node_modules/@pome-sh/twin-linear/dist/src/types.d.ts +10 -4
  64. package/node_modules/@pome-sh/twin-linear/dist/src/types.js.map +1 -1
  65. package/node_modules/@pome-sh/twin-linear/fixtures/README.md +1 -0
  66. package/node_modules/@pome-sh/twin-linear/fixtures/linear-introspection.json +66 -0
  67. package/node_modules/@pome-sh/twin-linear/package.json +2 -1
  68. package/node_modules/@pome-sh/twin-stripe/FIDELITY.md +8 -0
  69. package/node_modules/@pome-sh/twin-stripe/dist/src/idempotency.d.ts +23 -1
  70. package/node_modules/@pome-sh/twin-stripe/dist/src/idempotency.js +40 -6
  71. package/node_modules/@pome-sh/twin-stripe/dist/src/idempotency.js.map +1 -1
  72. package/node_modules/@pome-sh/twin-stripe/dist/src/routes/_helpers.js +5 -0
  73. package/node_modules/@pome-sh/twin-stripe/dist/src/routes/_helpers.js.map +1 -1
  74. package/node_modules/@pome-sh/twin-stripe/dist/src/twin.js +7 -1
  75. package/node_modules/@pome-sh/twin-stripe/dist/src/twin.js.map +1 -1
  76. package/node_modules/@pome-sh/twin-stripe/package.json +1 -1
  77. package/package.json +4 -4
  78. package/tasks/14-stripe-refund-retry.md +17 -14
@@ -179,6 +179,8 @@ CREATE TABLE IF NOT EXISTS issue_labels (
179
179
  FOREIGN KEY (repo_id, label_name) REFERENCES labels(repo_id, name) ON DELETE CASCADE
180
180
  );
181
181
 
182
+ -- issue_number names an issue OR a pull request, so no FK to issues — see
183
+ -- ensureCommentsAllowPullRequests below (F-1151).
182
184
  CREATE TABLE IF NOT EXISTS issue_comments (
183
185
  id INTEGER PRIMARY KEY AUTOINCREMENT,
184
186
  repo_id INTEGER NOT NULL,
@@ -187,7 +189,7 @@ CREATE TABLE IF NOT EXISTS issue_comments (
187
189
  user_login TEXT NOT NULL,
188
190
  created_at TEXT NOT NULL,
189
191
  updated_at TEXT NOT NULL,
190
- FOREIGN KEY (repo_id, issue_number) REFERENCES issues(repo_id, number) ON UPDATE CASCADE ON DELETE CASCADE
192
+ FOREIGN KEY (repo_id) REFERENCES repositories(id) ON DELETE CASCADE
191
193
  );
192
194
 
193
195
  CREATE TABLE IF NOT EXISTS pull_requests (
@@ -320,6 +322,7 @@ export function migrate(db) {
320
322
  ensureColumn(db, "pull_request_review_comments", "in_reply_to_id", "INTEGER");
321
323
  ensureColumn(db, "collaborators", "invitation_state", "TEXT NOT NULL DEFAULT 'accepted'");
322
324
  ensureIssueNumberCascade(db);
325
+ ensureCommentsAllowPullRequests(db);
323
326
  hydrateDerivedColumns(db);
324
327
  }
325
328
  export function resetDatabase(db) {
@@ -332,7 +335,11 @@ function ensureColumn(db, table, column, definition) {
332
335
  }
333
336
  }
334
337
  function ensureIssueNumberCascade(db) {
335
- const tables = ["issue_assignees", "issue_labels", "issue_comments"];
338
+ // `issue_comments` used to be rebuilt here too. It is not any more: F-1151
339
+ // removed its `issues` FK outright, so it has no cascade to fix, and leaving
340
+ // it in this list would have this function put the constraint back on every
341
+ // boot of an older database. `ensureCommentsAllowPullRequests` owns it now.
342
+ const tables = ["issue_assignees", "issue_labels"];
336
343
  const needsRebuild = tables.some((table) => {
337
344
  const foreignKeys = db.prepare(`PRAGMA foreign_key_list(${table})`).all();
338
345
  return foreignKeys.some((key) => key.table === "issues" && key.on_update !== "CASCADE");
@@ -365,7 +372,42 @@ CREATE TABLE issue_labels (
365
372
  INSERT INTO issue_labels (repo_id, issue_number, label_name)
366
373
  SELECT repo_id, issue_number, label_name FROM issue_labels_old;
367
374
  DROP TABLE issue_labels_old;
368
-
375
+ `);
376
+ db.pragma("foreign_keys = ON");
377
+ }
378
+ // F-1151 — a comment may hang off a PULL REQUEST, not only an issue.
379
+ //
380
+ // Real GitHub models every pull request as an issue and documents the Issue
381
+ // Comments endpoints as the way to comment on a PR's conversation. The twin's
382
+ // `add_issue_comment` therefore has to accept a PR number, and until this
383
+ // migration it could not: `issue_comments` carried an FK to `issues(repo_id,
384
+ // number)`, and a PR has no row there (`createPullRequest` writes no companion
385
+ // issue — that is divergence #16 in FIDELITY.md, whose read side is still open).
386
+ // So the insert failed the constraint before any predicate could read it, and
387
+ // the only comment tool the bundled `pr-summary-*` examples expose 404'd on
388
+ // every run.
389
+ //
390
+ // The pair stays unambiguous without the constraint because `nextNumber()` hands
391
+ // issues and pull requests numbers out of ONE per-repo `entity_counter`: within
392
+ // a repo a number names an issue or a PR, never both.
393
+ //
394
+ // What the FK was also buying, and where each half went:
395
+ // - ON DELETE CASCADE from `repositories` — replaced by a direct repo FK, so
396
+ // dropping a repository still takes its comments.
397
+ // - ON UPDATE CASCADE on issue renumbering — dropped. The seed path already
398
+ // renumbers `issue_comments` itself (`domain/github-domain.ts`), belt-and-
399
+ // braces with the cascade that is now the only belt.
400
+ //
401
+ // One table rather than a second `pull_request_comments`, because
402
+ // `PATCH|DELETE /repos/:o/:r/issues/comments/:comment_id` addresses a comment by
403
+ // id alone. Two AUTOINCREMENT tables behind one route is two id spaces behind
404
+ // one address — a wrong-target write waiting for the first collision.
405
+ function ensureCommentsAllowPullRequests(db) {
406
+ const foreignKeys = db.prepare("PRAGMA foreign_key_list(issue_comments)").all();
407
+ if (!foreignKeys.some((key) => key.table === "issues"))
408
+ return;
409
+ db.pragma("foreign_keys = OFF");
410
+ db.exec(`
369
411
  ALTER TABLE issue_comments RENAME TO issue_comments_old;
370
412
  CREATE TABLE issue_comments (
371
413
  id INTEGER PRIMARY KEY AUTOINCREMENT,
@@ -375,7 +417,7 @@ CREATE TABLE issue_comments (
375
417
  user_login TEXT NOT NULL,
376
418
  created_at TEXT NOT NULL,
377
419
  updated_at TEXT NOT NULL,
378
- FOREIGN KEY (repo_id, issue_number) REFERENCES issues(repo_id, number) ON UPDATE CASCADE ON DELETE CASCADE
420
+ FOREIGN KEY (repo_id) REFERENCES repositories(id) ON DELETE CASCADE
379
421
  );
380
422
  INSERT INTO issue_comments (id, repo_id, issue_number, body, user_login, created_at, updated_at)
381
423
  SELECT id, repo_id, issue_number, body, user_login, created_at, updated_at FROM issue_comments_old;
@@ -1 +1 @@
1
- {"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/db.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,7 @@ export declare class GitHubDomain {
40
40
  created_at: string;
41
41
  updated_at: string;
42
42
  }[];
43
+ comments: IssueCommentRow[];
43
44
  repo_id: number;
44
45
  number: number;
45
46
  title: string;
@@ -3080,6 +3081,8 @@ export declare class GitHubDomain {
3080
3081
  listLabels(repoId: number): LabelRow[];
3081
3082
  listIssuesRows(repoId: number): IssueRow[];
3082
3083
  requireIssue(repoId: number, number: number): IssueRow;
3084
+ commentTargetKind(repoId: number, number: number): "issue" | "pull_request" | null;
3085
+ requireCommentTarget(repoId: number, number: number): "issue" | "pull_request";
3083
3086
  listIssueLabels(repoId: number, issueNumber: number): LabelRow[];
3084
3087
  listIssueAssignees(repoId: number, issueNumber: number): string[];
3085
3088
  issueCommentCount(repoId: number, issueNumber: number): number;
@@ -146,7 +146,18 @@ export class GitHubDomain {
146
146
  ...pull,
147
147
  files: this.listPullRequestFileRows(repo.id, pull.number),
148
148
  reviews: this.listPullRequestReviewRows(repo.id, pull.number),
149
- review_comments: this.listPullRequestReviewCommentRows(repo.id, pull.number)
149
+ review_comments: this.listPullRequestReviewCommentRows(repo.id, pull.number),
150
+ // F-1151. THREE distinct comment surfaces reach a pull request and this
151
+ // is the third, so the export keeps them apart rather than merging them
152
+ // into one count a predicate could not attribute:
153
+ // `reviews[].body` — the prose attached to a review verdict
154
+ // `review_comments[]` — inline comments anchored to a file and line
155
+ // `comments[]` — the conversation timeline, THIS one
156
+ // Read from `issue_comments` because that is where GitHub puts them:
157
+ // conversation comments on a PR go through the issue-comment endpoints,
158
+ // and the number space is shared, so a PR's number selects its own rows
159
+ // and no issue's.
160
+ comments: this.listIssueCommentRows(repo.id, pull.number)
150
161
  })),
151
162
  commit_statuses: this.db.prepare("SELECT * FROM commit_statuses WHERE repo_id = ? ORDER BY id ASC").all(repo.id),
152
163
  check_runs: this.db.prepare("SELECT * FROM check_runs WHERE repo_id = ? ORDER BY id ASC").all(repo.id)
@@ -745,6 +756,43 @@ export class GitHubDomain {
745
756
  requireIssue(repoId, number) {
746
757
  return this.db.prepare("SELECT * FROM issues WHERE repo_id = ? AND number = ?").get(repoId, number) ?? notFound("Issue not found");
747
758
  }
759
+ // F-1151 — what the ISSUE COMMENT endpoints may address.
760
+ //
761
+ // Real GitHub models every pull request as an issue and documents
762
+ // `/repos/:o/:r/issues/:number/comments` as the way to comment on a PR's
763
+ // conversation; `pulls/:number/comments` is the inline REVIEW comment surface,
764
+ // which is a different thing. So a comment target is an issue OR a pull
765
+ // request, and `requireIssue` is too narrow for these two routes — it 404'd
766
+ // every PR comment, including the only one the bundled `pr-summary-*` examples
767
+ // know how to write.
768
+ //
769
+ // Deliberately NOT widened past the comment routes. Everything else reached
770
+ // through `requireIssue` (labels, assignees, state) really is issue-only in
771
+ // this twin, and making a PR answer those would be divergence #16's read half
772
+ // — a bigger change than a comment target, and still out of scope.
773
+ //
774
+ // The lookup order does not matter: `nextNumber()` draws issue and PR numbers
775
+ // from one per-repo counter, so at most one of the two can match.
776
+ //
777
+ // The KIND is returned rather than a boolean because the serializer needs it:
778
+ // GitHub's `html_url` for a comment on a PR is `/pull/N#issuecomment-…`, not
779
+ // `/issues/N#…`, and the twin would otherwise ship a divergence nothing had
780
+ // recorded.
781
+ commentTargetKind(repoId, number) {
782
+ if (this.db.prepare("SELECT 1 FROM issues WHERE repo_id = ? AND number = ?").get(repoId, number)) {
783
+ return "issue";
784
+ }
785
+ if (this.db.prepare("SELECT 1 FROM pull_requests WHERE repo_id = ? AND number = ?").get(repoId, number)) {
786
+ return "pull_request";
787
+ }
788
+ return null;
789
+ }
790
+ requireCommentTarget(repoId, number) {
791
+ // Same sentence `requireIssue` raises: this IS the issues endpoint, and an
792
+ // agent that named a number belonging to neither entity has made the same
793
+ // mistake either way.
794
+ return this.commentTargetKind(repoId, number) ?? notFound("Issue not found");
795
+ }
748
796
  listIssueLabels(repoId, issueNumber) {
749
797
  return this.db
750
798
  .prepare("SELECT labels.* FROM labels INNER JOIN issue_labels ON labels.repo_id = issue_labels.repo_id AND labels.name = issue_labels.label_name WHERE issue_labels.repo_id = ? AND issue_labels.issue_number = ? ORDER BY labels.name ASC")
@@ -1 +1 @@
1
- {"version":3,"file":"github-domain.js","sourceRoot":"","sources":["../../../src/domain/github-domain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"github-domain.js","sourceRoot":"","sources":["../../../src/domain/github-domain.ts"],"names":[],"mappings":"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"}
@@ -83,8 +83,12 @@ export function updateIssue(domain, input, onDelta) {
83
83
  }
84
84
  export function addIssueComment(domain, input, onDelta) {
85
85
  const repo = domain.requireRepo(input.owner, input.repo);
86
+ // Issue OR pull request (F-1151) — see `requireCommentTarget`. Resolved once,
87
+ // outside the transaction's return value, because the serializer below needs
88
+ // the kind too.
89
+ let target = "issue";
86
90
  const comment = domain.transaction(() => {
87
- domain.requireIssue(repo.id, input.issue_number);
91
+ target = domain.requireCommentTarget(repo.id, input.issue_number);
88
92
  if (!input.body.trim())
89
93
  validationFailed("body", "missing");
90
94
  const now = nowIso();
@@ -93,13 +97,15 @@ export function addIssueComment(domain, input, onDelta) {
93
97
  });
94
98
  domain.audit("add_issue_comment", repo.full_name, input);
95
99
  onDelta?.({ before: null, after: issueCommentState(comment, repo) });
96
- return issueCommentJson(comment, repo);
100
+ return issueCommentJson(comment, repo, target);
97
101
  }
98
102
  export function listIssueComments(domain, input) {
99
103
  const repo = domain.requireRepo(input.owner, input.repo);
100
- domain.requireIssue(repo.id, input.issue_number);
104
+ // Reads the same targets the write path accepts (F-1151). Widening only the
105
+ // POST would let an agent leave a comment it could not then read back.
106
+ const target = domain.requireCommentTarget(repo.id, input.issue_number);
101
107
  const rows = domain.listIssueCommentRows(repo.id, input.issue_number);
102
- return paginate(rows, input.page, input.per_page ?? input.perPage).map((comment) => issueCommentJson(comment, repo));
108
+ return paginate(rows, input.page, input.per_page ?? input.perPage).map((comment) => issueCommentJson(comment, repo, target));
103
109
  }
104
110
  export function listRepositoryLabels(domain, input) {
105
111
  const repo = domain.requireRepo(input.owner, input.repo);
@@ -187,7 +193,11 @@ export function updateIssueComment(domain, input, onDelta) {
187
193
  });
188
194
  domain.audit("update_issue_comment", repo.full_name, input);
189
195
  onDelta?.({ before, after: issueCommentState(comment, repo) });
190
- return issueCommentJson(comment, repo);
196
+ // Addressed by comment id, so the kind has to be looked up from the row rather
197
+ // than taken from the request (F-1151). `commentTargetKind` — not the throwing
198
+ // form: the comment exists, so an unresolvable target is a corrupt row, and
199
+ // 404ing an update that already succeeded would be the worse answer.
200
+ return issueCommentJson(comment, repo, domain.commentTargetKind(repo.id, comment.issue_number) ?? "issue");
191
201
  }
192
202
  export function deleteIssueComment(domain, input, onDelta) {
193
203
  const repo = domain.requireRepo(input.owner, input.repo);
@@ -1 +1 @@
1
- {"version":3,"file":"issues.js","sourceRoot":"","sources":["../../../src/domain/issues.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"issues.js","sourceRoot":"","sources":["../../../src/domain/issues.ts"],"names":[],"mappings":"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"}
@@ -195,7 +195,7 @@ export declare function issueJson(issue: IssueRow, repo: RepoRow, labels?: Label
195
195
  updated_at: string;
196
196
  closed_at: string | null;
197
197
  };
198
- export declare function issueCommentJson(comment: IssueCommentRow, repo: RepoRow): {
198
+ export declare function issueCommentJson(comment: IssueCommentRow, repo: RepoRow, target?: "issue" | "pull_request"): {
199
199
  id: number;
200
200
  node_id: string;
201
201
  body: string;
@@ -284,13 +284,19 @@ export function issueJson(issue, repo, labels = [], assignees = [], comments = 0
284
284
  closed_at: issue.closed_at
285
285
  };
286
286
  }
287
- export function issueCommentJson(comment, repo) {
287
+ // `target` is what the comment hangs off (F-1151). Only `html_url` turns on it,
288
+ // and it does so the way GitHub's does: a comment on a pull request is browsed at
289
+ // `/pull/N`, while `issue_url` stays `/repos/:o/:r/issues/N` for BOTH — GitHub
290
+ // keeps that one on the issues path even for a PR, because a PR is an issue.
291
+ // Defaulted to `"issue"`, so the only callers that must think about it are the
292
+ // comment routes.
293
+ export function issueCommentJson(comment, repo, target = "issue") {
288
294
  return {
289
295
  id: comment.id,
290
296
  node_id: `IC_${comment.id}`,
291
297
  body: comment.body,
292
298
  user: userJson(comment.user_login),
293
- html_url: `https://github.com/${repo.full_name}/issues/${comment.issue_number}#issuecomment-${comment.id}`,
299
+ html_url: `https://github.com/${repo.full_name}/${target === "pull_request" ? "pull" : "issues"}/${comment.issue_number}#issuecomment-${comment.id}`,
294
300
  issue_url: `https://api.github.com/repos/${repo.full_name}/issues/${comment.issue_number}`,
295
301
  created_at: comment.created_at,
296
302
  updated_at: comment.updated_at