@mmnto/cli 1.16.0 → 1.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 (35) hide show
  1. package/dist/adapters/github-cli-pr.d.ts +13 -1
  2. package/dist/adapters/github-cli-pr.d.ts.map +1 -1
  3. package/dist/adapters/github-cli-pr.js +60 -2
  4. package/dist/adapters/github-cli-pr.js.map +1 -1
  5. package/dist/adapters/github-cli-pr.test.js +67 -0
  6. package/dist/adapters/github-cli-pr.test.js.map +1 -1
  7. package/dist/adapters/pr-adapter.d.ts +25 -0
  8. package/dist/adapters/pr-adapter.d.ts.map +1 -1
  9. package/dist/commands/retrospect.d.ts +37 -0
  10. package/dist/commands/retrospect.d.ts.map +1 -0
  11. package/dist/commands/retrospect.js +472 -0
  12. package/dist/commands/retrospect.js.map +1 -0
  13. package/dist/commands/retrospect.test.d.ts +2 -0
  14. package/dist/commands/retrospect.test.d.ts.map +1 -0
  15. package/dist/commands/retrospect.test.js +696 -0
  16. package/dist/commands/retrospect.test.js.map +1 -0
  17. package/dist/commands/shield-estimate.d.ts +24 -0
  18. package/dist/commands/shield-estimate.d.ts.map +1 -0
  19. package/dist/commands/shield-estimate.js +55 -0
  20. package/dist/commands/shield-estimate.js.map +1 -0
  21. package/dist/commands/shield-estimate.test.d.ts +2 -0
  22. package/dist/commands/shield-estimate.test.d.ts.map +1 -0
  23. package/dist/commands/shield-estimate.test.js +309 -0
  24. package/dist/commands/shield-estimate.test.js.map +1 -0
  25. package/dist/commands/shield-templates.d.ts +9 -0
  26. package/dist/commands/shield-templates.d.ts.map +1 -1
  27. package/dist/commands/shield-templates.js +9 -0
  28. package/dist/commands/shield-templates.js.map +1 -1
  29. package/dist/commands/shield.d.ts +13 -0
  30. package/dist/commands/shield.d.ts.map +1 -1
  31. package/dist/commands/shield.js +33 -0
  32. package/dist/commands/shield.js.map +1 -1
  33. package/dist/index.js +65 -0
  34. package/dist/index.js.map +1 -1
  35. package/package.json +2 -2
@@ -1,10 +1,22 @@
1
- import type { PrAdapter, StandardCodeScanAlert, StandardPr, StandardPrListItem, StandardReviewComment } from './pr-adapter.js';
1
+ import type { PrAdapter, StandardCodeScanAlert, StandardPr, StandardPrListItem, StandardPrReviewSubmission, StandardReviewComment } from './pr-adapter.js';
2
2
  export declare class GitHubCliPrAdapter implements PrAdapter {
3
3
  private cwd;
4
4
  constructor(cwd: string);
5
5
  fetchOpenPRs(): StandardPrListItem[];
6
6
  fetchPr(prNumber: number): StandardPr;
7
7
  fetchReviewComments(prNumber: number): StandardReviewComment[];
8
+ /**
9
+ * Fetch the per-submission review record for a PR, exposing
10
+ * `commit_id` (head SHA at review time) and `submitted_at` so callers
11
+ * can group findings into push-based rounds. The shape returned by
12
+ * `gh pr view --json reviews` (used by `fetchPr`) intentionally does
13
+ * NOT include `commit_id`, so the bot-tax circuit-breaker
14
+ * (mmnto-ai/totem#1713) reaches for the lower-level paginated
15
+ * `repos/<owner>/<repo>/pulls/<N>/reviews` endpoint.
16
+ *
17
+ * Read-only. No GitHub mutation.
18
+ */
19
+ fetchReviews(prNumber: number): StandardPrReviewSubmission[];
8
20
  fetchCodeScanningAlerts(prNumber: number): StandardCodeScanAlert[];
9
21
  createIssue(params: {
10
22
  title: string;
@@ -1 +1 @@
1
- {"version":3,"file":"github-cli-pr.d.ts","sourceRoot":"","sources":["../../src/adapters/github-cli-pr.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,SAAS,EACT,qBAAqB,EACrB,UAAU,EACV,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,iBAAiB,CAAC;AA+DzB,qBAAa,kBAAmB,YAAW,SAAS;IACtC,OAAO,CAAC,GAAG;gBAAH,GAAG,EAAE,MAAM;IAE/B,YAAY,IAAI,kBAAkB,EAAE;IAcpC,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU;IAiBrC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,qBAAqB,EAAE;IAmB9D,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,qBAAqB,EAAE;IAwBlE,WAAW,CAAC,MAAM,EAAE;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GAAG,MAAM;IAmBV,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAevE,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAIlD,OAAO,CAAC,UAAU;CAWnB"}
1
+ {"version":3,"file":"github-cli-pr.d.ts","sourceRoot":"","sources":["../../src/adapters/github-cli-pr.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,SAAS,EACT,qBAAqB,EACrB,UAAU,EACV,kBAAkB,EAClB,0BAA0B,EAC1B,qBAAqB,EACtB,MAAM,iBAAiB,CAAC;AA+FzB,qBAAa,kBAAmB,YAAW,SAAS;IACtC,OAAO,CAAC,GAAG;gBAAH,GAAG,EAAE,MAAM;IAE/B,YAAY,IAAI,kBAAkB,EAAE;IAcpC,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU;IAiBrC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,qBAAqB,EAAE;IAwB9D;;;;;;;;;;OAUG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,0BAA0B,EAAE;IAkB5D,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,qBAAqB,EAAE;IAwBlE,WAAW,CAAC,MAAM,EAAE;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GAAG,MAAM;IAmBV,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAevE,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAIlD,OAAO,CAAC,UAAU;CAWnB"}
@@ -26,13 +26,43 @@ const GhPrSchema = z.object({
26
26
  });
27
27
  const GhReviewCommentSchema = z.object({
28
28
  id: z.number(),
29
- user: z.object({ login: z.string() }),
29
+ // Nullable for deleted/ghost accounts — mirrors `GhPrReviewSchema.user`.
30
+ // Per Sonnet review on mmnto-ai/totem#1734 round-2.
31
+ user: z.object({ login: z.string() }).nullable(),
30
32
  body: z.string(),
31
33
  path: z.string(),
32
34
  diff_hunk: z.string(),
33
35
  in_reply_to_id: z.number().optional(),
34
36
  created_at: z.string().optional(),
37
+ /**
38
+ * Stable link from a review comment back to its parent review submission.
39
+ * Per CR mmnto-ai/totem#1734 round-2: `created_at` can predate the parent
40
+ * review's `submitted_at` for pending/draft reviews, so timestamp joins
41
+ * mis-attribute the head SHA. `pull_request_review_id` is the foreign
42
+ * key. Null for non-review comments (issue comments).
43
+ */
44
+ pull_request_review_id: z.number().nullable().optional(),
35
45
  });
46
+ // Subset of `repos/<owner>/<repo>/pulls/<N>/reviews`. We only consume
47
+ // the fields the bot-tax circuit-breaker needs (commit_id for push-based
48
+ // round grouping, submitted_at for ordering, user.login for bot
49
+ // detection, state + body for surface-level filtering). Strictly typed
50
+ // so an upstream API shape change surfaces as a TotemParseError instead
51
+ // of silently widening the round count.
52
+ const GhPrReviewSchema = z.object({
53
+ id: z.number(),
54
+ user: z.object({ login: z.string() }).nullable(),
55
+ commit_id: z.string().nullable().optional(),
56
+ submitted_at: z.string().nullable().optional(),
57
+ state: z.string(),
58
+ body: z.string().nullable(),
59
+ });
60
+ // `StandardPrReviewSubmission` lives in `pr-adapter.ts` (the platform-neutral
61
+ // surface). Per CR mmnto-ai/totem#1734 round-2 the `fetchReviews` method also
62
+ // lives on the `PrAdapter` interface so consumers can stay decoupled from the
63
+ // concrete adapter implementation. Callers MUST null-guard `user_login` before
64
+ // passing to `isBotComment` (deleted/ghost accounts surface as null per the
65
+ // GitHub API).
36
66
  const GhCodeScanAlertSchema = z
37
67
  .object({
38
68
  number: z.number(),
@@ -83,12 +113,40 @@ export class GitHubCliPrAdapter {
83
113
  const comments = ghFetchAndParse(['api', `repos/${nwo}/pulls/${prNumber}/comments`, '--paginate'], z.array(GhReviewCommentSchema), `review comments for PR #${prNumber}`, this.cwd);
84
114
  return comments.map((c) => ({
85
115
  id: c.id,
86
- author: c.user.login,
116
+ // `user` may be null for deleted/ghost accounts; coerce to '' so the
117
+ // existing `StandardReviewComment.author: string` contract holds.
118
+ // `isBotComment('')` correctly returns false, so the comment drops
119
+ // out of bot-detection paths without surfacing as a non-bot author.
120
+ author: c.user?.login ?? '',
87
121
  body: c.body,
88
122
  path: c.path,
89
123
  diffHunk: c.diff_hunk,
90
124
  inReplyToId: c.in_reply_to_id,
91
125
  createdAt: c.created_at,
126
+ pullRequestReviewId: c.pull_request_review_id ?? null,
127
+ }));
128
+ }
129
+ /**
130
+ * Fetch the per-submission review record for a PR, exposing
131
+ * `commit_id` (head SHA at review time) and `submitted_at` so callers
132
+ * can group findings into push-based rounds. The shape returned by
133
+ * `gh pr view --json reviews` (used by `fetchPr`) intentionally does
134
+ * NOT include `commit_id`, so the bot-tax circuit-breaker
135
+ * (mmnto-ai/totem#1713) reaches for the lower-level paginated
136
+ * `repos/<owner>/<repo>/pulls/<N>/reviews` endpoint.
137
+ *
138
+ * Read-only. No GitHub mutation.
139
+ */
140
+ fetchReviews(prNumber) {
141
+ const nwo = this.getRepoNwo();
142
+ const reviews = ghFetchAndParse(['api', `repos/${nwo}/pulls/${prNumber}/reviews`, '--paginate'], z.array(GhPrReviewSchema), `review submissions for PR #${prNumber}`, this.cwd);
143
+ return reviews.map((r) => ({
144
+ id: r.id,
145
+ user_login: r.user?.login ?? null,
146
+ commit_id: r.commit_id ?? undefined,
147
+ submitted_at: r.submitted_at ?? undefined,
148
+ state: r.state,
149
+ body: r.body ?? '',
92
150
  }));
93
151
  }
94
152
  fetchCodeScanningAlerts(prNumber) {
@@ -1 +1 @@
1
- {"version":3,"file":"github-cli-pr.js","sourceRoot":"","sources":["../../src/adapters/github-cli-pr.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"github-cli-pr.js","sourceRoot":"","sources":["../../src/adapters/github-cli-pr.ts"],"names":[],"mappings":"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"}
@@ -97,6 +97,7 @@ describe('GitHubCliPrAdapter', () => {
97
97
  diffHunk: '@@ -1,3 +1,4 @@',
98
98
  inReplyToId: undefined,
99
99
  createdAt: '2026-03-01T00:00:00Z',
100
+ pullRequestReviewId: null,
100
101
  },
101
102
  {
102
103
  id: 101,
@@ -106,10 +107,76 @@ describe('GitHubCliPrAdapter', () => {
106
107
  diffHunk: '@@ -1,3 +1,4 @@',
107
108
  inReplyToId: 100,
108
109
  createdAt: '2026-03-01T01:00:00Z',
110
+ pullRequestReviewId: null,
109
111
  },
110
112
  ]);
111
113
  });
112
114
  });
115
+ describe('fetchReviews', () => {
116
+ it('maps gh API output to StandardPrReviewSubmission with commit_id + submitted_at', () => {
117
+ // First call: getRepoNwo
118
+ mockedExec.mockReturnValueOnce('mmnto-ai/totem\n');
119
+ // Second call: paginated reviews
120
+ mockedExec.mockReturnValueOnce(JSON.stringify([
121
+ {
122
+ id: 100,
123
+ user: { login: 'coderabbitai[bot]' },
124
+ commit_id: 'sha-A',
125
+ submitted_at: '2026-04-29T01:00:00Z',
126
+ state: 'COMMENTED',
127
+ body: 'Round 1 review.',
128
+ },
129
+ {
130
+ id: 101,
131
+ user: null, // deleted/ghost account — surfaces as null user_login
132
+ commit_id: 'sha-B',
133
+ submitted_at: '2026-04-29T02:00:00Z',
134
+ state: 'COMMENTED',
135
+ body: '',
136
+ },
137
+ {
138
+ id: 102,
139
+ user: { login: 'human-reviewer' },
140
+ commit_id: null,
141
+ submitted_at: null,
142
+ state: 'PENDING',
143
+ body: null,
144
+ },
145
+ ]));
146
+ const result = adapter.fetchReviews(42);
147
+ expect(result).toEqual([
148
+ {
149
+ id: 100,
150
+ user_login: 'coderabbitai[bot]',
151
+ commit_id: 'sha-A',
152
+ submitted_at: '2026-04-29T01:00:00Z',
153
+ state: 'COMMENTED',
154
+ body: 'Round 1 review.',
155
+ },
156
+ {
157
+ id: 101,
158
+ user_login: null,
159
+ commit_id: 'sha-B',
160
+ submitted_at: '2026-04-29T02:00:00Z',
161
+ state: 'COMMENTED',
162
+ body: '',
163
+ },
164
+ {
165
+ id: 102,
166
+ user_login: 'human-reviewer',
167
+ commit_id: undefined,
168
+ submitted_at: undefined,
169
+ state: 'PENDING',
170
+ body: '',
171
+ },
172
+ ]);
173
+ });
174
+ it('returns empty array when no reviews', () => {
175
+ mockedExec.mockReturnValueOnce('mmnto-ai/totem\n');
176
+ mockedExec.mockReturnValueOnce('[]');
177
+ expect(adapter.fetchReviews(99)).toEqual([]);
178
+ });
179
+ });
113
180
  describe('fetchCodeScanningAlerts', () => {
114
181
  it('maps gh API output to StandardCodeScanAlert format', () => {
115
182
  // First call: getRepoNwo
@@ -1 +1 @@
1
- {"version":3,"file":"github-cli-pr.test.js","sourceRoot":"","sources":["../../src/adapters/github-cli-pr.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"github-cli-pr.test.js","sourceRoot":"","sources":["../../src/adapters/github-cli-pr.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAElD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,iEAAiE;AACjE,+CAA+C;AAC/C,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,IAAI,EAAE;IACjC,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,YAAY,CAAgC,cAAc,CAAC,CAAC;IACpF,OAAO;QACL,GAAG,MAAM;QACT,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE;KAClB,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAEvC,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,MAAM,OAAO,GAAG,IAAI,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAEpD,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACtC,UAAU,CAAC,eAAe,CACxB,IAAI,CAAC,SAAS,CAAC;gBACb,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,gBAAgB,EAAE;gBACtE,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE;aACzD,CAAC,CACH,CAAC;YACF,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;YACtC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACrB,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,gBAAgB,EAAE;gBACtE,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE;aACzD,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC7C,UAAU,CAAC,eAAe,CACxB,IAAI,CAAC,SAAS,CAAC;gBACb,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,mBAAmB;gBAC1B,IAAI,EAAE,kBAAkB;gBACxB,KAAK,EAAE,MAAM;gBACb,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;gBACxD,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;aAC/E,CAAC,CACH,CAAC;YACF,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACnC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACrB,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,mBAAmB;gBAC1B,IAAI,EAAE,kBAAkB;gBACxB,KAAK,EAAE,MAAM;gBACb,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;gBAC7C,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;aACpE,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,UAAU,CAAC,eAAe,CACxB,IAAI,CAAC,SAAS,CAAC;gBACb,MAAM,EAAE,CAAC;gBACT,KAAK,EAAE,MAAM;gBACb,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,MAAM;gBACb,QAAQ,EAAE,EAAE;gBACZ,OAAO,EAAE,EAAE;aACZ,CAAC,CACH,CAAC;YACF,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACnC,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;YAC5D,yBAAyB;YACzB,UAAU,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;YACnD,mCAAmC;YACnC,UAAU,CAAC,mBAAmB,CAC5B,IAAI,CAAC,SAAS,CAAC;gBACb;oBACE,EAAE,EAAE,GAAG;oBACP,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;oBAC3B,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,cAAc;oBACpB,SAAS,EAAE,iBAAiB;oBAC5B,cAAc,EAAE,SAAS;oBACzB,UAAU,EAAE,sBAAsB;iBACnC;gBACD;oBACE,EAAE,EAAE,GAAG;oBACP,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE;oBACzB,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,cAAc;oBACpB,SAAS,EAAE,iBAAiB;oBAC5B,cAAc,EAAE,GAAG;oBACnB,UAAU,EAAE,sBAAsB;iBACnC;aACF,CAAC,CACH,CAAC;YAEF,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;YAC/C,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACrB;oBACE,EAAE,EAAE,GAAG;oBACP,MAAM,EAAE,UAAU;oBAClB,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,cAAc;oBACpB,QAAQ,EAAE,iBAAiB;oBAC3B,WAAW,EAAE,SAAS;oBACtB,SAAS,EAAE,sBAAsB;oBACjC,mBAAmB,EAAE,IAAI;iBAC1B;gBACD;oBACE,EAAE,EAAE,GAAG;oBACP,MAAM,EAAE,QAAQ;oBAChB,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,cAAc;oBACpB,QAAQ,EAAE,iBAAiB;oBAC3B,WAAW,EAAE,GAAG;oBAChB,SAAS,EAAE,sBAAsB;oBACjC,mBAAmB,EAAE,IAAI;iBAC1B;aACF,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,gFAAgF,EAAE,GAAG,EAAE;YACxF,yBAAyB;YACzB,UAAU,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;YACnD,iCAAiC;YACjC,UAAU,CAAC,mBAAmB,CAC5B,IAAI,CAAC,SAAS,CAAC;gBACb;oBACE,EAAE,EAAE,GAAG;oBACP,IAAI,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE;oBACpC,SAAS,EAAE,OAAO;oBAClB,YAAY,EAAE,sBAAsB;oBACpC,KAAK,EAAE,WAAW;oBAClB,IAAI,EAAE,iBAAiB;iBACxB;gBACD;oBACE,EAAE,EAAE,GAAG;oBACP,IAAI,EAAE,IAAI,EAAE,sDAAsD;oBAClE,SAAS,EAAE,OAAO;oBAClB,YAAY,EAAE,sBAAsB;oBACpC,KAAK,EAAE,WAAW;oBAClB,IAAI,EAAE,EAAE;iBACT;gBACD;oBACE,EAAE,EAAE,GAAG;oBACP,IAAI,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE;oBACjC,SAAS,EAAE,IAAI;oBACf,YAAY,EAAE,IAAI;oBAClB,KAAK,EAAE,SAAS;oBAChB,IAAI,EAAE,IAAI;iBACX;aACF,CAAC,CACH,CAAC;YAEF,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YACxC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACrB;oBACE,EAAE,EAAE,GAAG;oBACP,UAAU,EAAE,mBAAmB;oBAC/B,SAAS,EAAE,OAAO;oBAClB,YAAY,EAAE,sBAAsB;oBACpC,KAAK,EAAE,WAAW;oBAClB,IAAI,EAAE,iBAAiB;iBACxB;gBACD;oBACE,EAAE,EAAE,GAAG;oBACP,UAAU,EAAE,IAAI;oBAChB,SAAS,EAAE,OAAO;oBAClB,YAAY,EAAE,sBAAsB;oBACpC,KAAK,EAAE,WAAW;oBAClB,IAAI,EAAE,EAAE;iBACT;gBACD;oBACE,EAAE,EAAE,GAAG;oBACP,UAAU,EAAE,gBAAgB;oBAC5B,SAAS,EAAE,SAAS;oBACpB,YAAY,EAAE,SAAS;oBACvB,KAAK,EAAE,SAAS;oBAChB,IAAI,EAAE,EAAE;iBACT;aACF,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC7C,UAAU,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;YACnD,UAAU,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YACrC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACvC,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;YAC5D,yBAAyB;YACzB,UAAU,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;YACnD,oCAAoC;YACpC,UAAU,CAAC,mBAAmB,CAC5B,IAAI,CAAC,SAAS,CAAC;gBACb;oBACE,MAAM,EAAE,EAAE;oBACV,IAAI,EAAE,EAAE,EAAE,EAAE,oBAAoB,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE;oBAClF,KAAK,EAAE,OAAO;oBACd,gBAAgB,EAAE,IAAI;oBACtB,QAAQ,EAAE,6DAA6D;oBACvE,oBAAoB,EAAE;wBACpB,GAAG,EAAE,2BAA2B;wBAChC,QAAQ,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;wBAChE,OAAO,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE;wBACxC,eAAe,EAAE,EAAE;qBACpB;oBACD,UAAU,EAAE,sBAAsB;oBAClC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBACzB;aACF,CAAC,CACH,CAAC;YAEF,MAAM,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC;YACnD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACrB;oBACE,MAAM,EAAE,EAAE;oBACV,OAAO,EAAE,oBAAoB;oBAC7B,KAAK,EAAE,OAAO;oBACd,gBAAgB,EAAE,SAAS;oBAC3B,QAAQ,EAAE,6DAA6D;oBACvE,oBAAoB,EAAE;wBACpB,QAAQ,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,EAAE,EAAE;wBAClD,OAAO,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE;qBACzC;iBACF;aACF,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;YAC/D,UAAU,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;YACnD,UAAU,CAAC,mBAAmB,CAC5B,IAAI,CAAC,SAAS,CAAC;gBACb;oBACE,MAAM,EAAE,EAAE;oBACV,IAAI,EAAE,EAAE,EAAE,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE;oBACpE,KAAK,EAAE,MAAM;oBACb,QAAQ,EAAE,6DAA6D;oBACvE,oBAAoB,EAAE;wBACpB,QAAQ,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE;wBAC9D,OAAO,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE;wBACvC,WAAW,EAAE,mBAAmB;qBACjC;oBACD,iBAAiB,EAAE,IAAI;iBACxB;aACF,CAAC,CACH,CAAC;YAEF,MAAM,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC;YACnD,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACjD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAC5C,UAAU,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;YACnD,UAAU,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAErC,MAAM,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC;YACnD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -32,6 +32,14 @@ export interface StandardReviewComment {
32
32
  diffHunk: string;
33
33
  inReplyToId?: number;
34
34
  createdAt?: string;
35
+ /**
36
+ * ID of the parent review submission, or `null` for non-review (issue) comments.
37
+ * Used by `totem retrospect` to bucket inline findings into push-based rounds
38
+ * via the review's `commit_id` rather than a fragile timestamp join (CR
39
+ * mmnto-ai/totem#1734 round-2 — `created_at` can predate `submitted_at` for
40
+ * pending/draft reviews).
41
+ */
42
+ pullRequestReviewId?: number | null;
35
43
  }
36
44
  export interface StandardCodeScanAlert {
37
45
  number: number;
@@ -49,10 +57,27 @@ export interface StandardCodeScanAlert {
49
57
  };
50
58
  };
51
59
  }
60
+ export interface StandardPrReviewSubmission {
61
+ id: number;
62
+ /** GitHub login of the review submitter, or `null` for deleted/ghost accounts. */
63
+ user_login: string | null;
64
+ /** PR head SHA at review submission time; may be absent for some review states. */
65
+ commit_id?: string | null;
66
+ /** ISO 8601 timestamp. */
67
+ submitted_at?: string | null;
68
+ state: string;
69
+ body: string;
70
+ }
52
71
  export interface PrAdapter {
53
72
  fetchOpenPRs(): StandardPrListItem[];
54
73
  fetchPr(prNumber: number): StandardPr;
55
74
  fetchReviewComments(prNumber: number): StandardReviewComment[];
75
+ /**
76
+ * Per-submission review records exposing `commit_id` (head SHA at review
77
+ * time) for push-based round grouping by `totem retrospect`. Optional so
78
+ * existing adapters that only consume `fetchPr` need not implement it.
79
+ */
80
+ fetchReviews?(prNumber: number): StandardPrReviewSubmission[];
56
81
  fetchCodeScanningAlerts?(prNumber: number): StandardCodeScanAlert[];
57
82
  createIssue(params: {
58
83
  title: string;
@@ -1 +1 @@
1
- {"version":3,"file":"pr-adapter.d.ts","sourceRoot":"","sources":["../../src/adapters/pr-adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,OAAO,EAAE,gBAAgB,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC;IACtC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,oBAAoB,EAAE;QACpB,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM,CAAC;YACb,UAAU,EAAE,MAAM,CAAC;SACpB,CAAC;QACF,OAAO,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;KAC3B,CAAC;CACH;AAED,MAAM,WAAW,SAAS;IACxB,YAAY,IAAI,kBAAkB,EAAE,CAAC;IACrC,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,CAAC;IACtC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,qBAAqB,EAAE,CAAC;IAC/D,uBAAuB,CAAC,CAAC,QAAQ,EAAE,MAAM,GAAG,qBAAqB,EAAE,CAAC;IACpE,WAAW,CAAC,MAAM,EAAE;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GAAG,MAAM,CAAC;IACX,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACxE,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACpD"}
1
+ {"version":3,"file":"pr-adapter.d.ts","sourceRoot":"","sources":["../../src/adapters/pr-adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,OAAO,EAAE,gBAAgB,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC;IACtC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,oBAAoB,EAAE;QACpB,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM,CAAC;YACb,UAAU,EAAE,MAAM,CAAC;SACpB,CAAC;QACF,OAAO,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;KAC3B,CAAC;CACH;AAED,MAAM,WAAW,0BAA0B;IACzC,EAAE,EAAE,MAAM,CAAC;IACX,kFAAkF;IAClF,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,mFAAmF;IACnF,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,0BAA0B;IAC1B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,SAAS;IACxB,YAAY,IAAI,kBAAkB,EAAE,CAAC;IACrC,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,CAAC;IACtC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,qBAAqB,EAAE,CAAC;IAC/D;;;;OAIG;IACH,YAAY,CAAC,CAAC,QAAQ,EAAE,MAAM,GAAG,0BAA0B,EAAE,CAAC;IAC9D,uBAAuB,CAAC,CAAC,QAAQ,EAAE,MAAM,GAAG,qBAAqB,EAAE,CAAC;IACpE,WAAW,CAAC,MAAM,EAAE;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GAAG,MAAM,CAAC;IACX,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACxE,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACpD"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * `totem retrospect <pr>` — bot-tax circuit-breaker (mmnto-ai/totem#1713).
3
+ *
4
+ * Reads a PR's bot-review history live, groups findings into push-based
5
+ * rounds via the per-submission `commit_id` field, enriches each finding
6
+ * with cross-PR-recurrence flags from `.totem/recurrence-stats.json`
7
+ * (read-only) plus rule-coverage flags from `compiled-rules.json`, and
8
+ * emits a console report classifying findings as `route-out`,
9
+ * `in-pr-fix`, or `undetermined` via a deterministic table-driven
10
+ * heuristic.
11
+ *
12
+ * Substrate of the bot-tax cluster (#1715 + #1714 + #1713). Reuses the
13
+ * `recurrence-stats.ts` signature + severity vocabulary so the cluster
14
+ * has a single source of truth.
15
+ *
16
+ * No LLM. No GitHub API writes. Read-only outside the optional
17
+ * `--out <path>` JSON write.
18
+ *
19
+ * NOTE on `--auto-file`: the auto-spec proposed shelling out to
20
+ * `gh issue create` for every route-out candidate. The locked design
21
+ * (see `.totem/specs/1713.md` Q2) defers `--auto-file` to a follow-up
22
+ * ticket because mass-filing issues is irreversible and the v0.1
23
+ * surface emits suggested titles + bodies that the human can copy-paste.
24
+ */
25
+ export declare const RETROSPECT_DISPLAY_TAG = "Retrospect";
26
+ export interface RunRetrospectOptions {
27
+ /** PR number to retrospect on (string for parity with `recurrence-stats`). */
28
+ prNumber: string;
29
+ /** Round-count threshold below which the command exits 0 with a benign skip. Default 5. */
30
+ threshold?: number;
31
+ /** Bypass the threshold gate — useful for ad-hoc inspection. */
32
+ force?: boolean;
33
+ /** Optional path to write the JSON report to (deterministic two-space indent). */
34
+ out?: string;
35
+ }
36
+ export declare function runRetrospect(options: RunRetrospectOptions): Promise<void>;
37
+ //# sourceMappingURL=retrospect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retrospect.d.ts","sourceRoot":"","sources":["../../src/commands/retrospect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAaH,eAAO,MAAM,sBAAsB,eAAe,CAAC;AA8BnD,MAAM,WAAW,oBAAoB;IACnC,8EAA8E;IAC9E,QAAQ,EAAE,MAAM,CAAC;IACjB,2FAA2F;IAC3F,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gEAAgE;IAChE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,kFAAkF;IAClF,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAcD,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuZhF"}