@knpkv/codecommit-core 0.1.1 → 0.2.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.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 knpkv
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -1 +1 @@
1
- {"version":3,"file":"getCommentsForPullRequest.d.ts","sourceRoot":"","sources":["../../src/AwsClient/getCommentsForPullRequest.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAG7C,OAAO,EAAE,MAAM,EAAiC,MAAM,QAAQ,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAiC,KAAK,iBAAiB,EAAE,MAAM,cAAc,CAAA;AACpF,OAAO,EAEL,KAAK,+BAA+B,EAIrC,MAAM,eAAe,CAAA;AAqItB,eAAO,MAAM,yBAAyB,GACpC,QAAQ,+BAA+B,kKA4BrC,CAAA"}
1
+ {"version":3,"file":"getCommentsForPullRequest.d.ts","sourceRoot":"","sources":["../../src/AwsClient/getCommentsForPullRequest.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAG7C,OAAO,EAAE,MAAM,EAAiC,MAAM,QAAQ,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAiC,KAAK,iBAAiB,EAAE,MAAM,cAAc,CAAA;AACpF,OAAO,EAEL,KAAK,+BAA+B,EAIrC,MAAM,eAAe,CAAA;AAwItB,eAAO,MAAM,yBAAyB,GACpC,QAAQ,+BAA+B,kKA6BrC,CAAA"}
@@ -91,14 +91,16 @@ const RawToCommentLocation = Schema.transform(RawCommentLocation, PRCommentLocat
91
91
  })
92
92
  });
93
93
  const decodeCommentLocation = Schema.decodeSync(RawToCommentLocation);
94
- const fetchCommentPages = (pullRequestId, repositoryName) => Stream.paginateEffect(undefined, (nextToken) => codecommit.getCommentsForPullRequest({
94
+ // NOTE: repositoryName is intentionally omitted passing it without
95
+ // beforeCommitId/afterCommitId triggers CommitIdRequiredException.
96
+ const fetchCommentPages = (pullRequestId) => Stream.paginateEffect(undefined, (nextToken) => codecommit.getCommentsForPullRequest({
95
97
  pullRequestId,
96
- repositoryName,
97
98
  ...(nextToken && { nextToken })
98
99
  }).pipe(Effect.map((resp) => [
99
100
  (resp.commentsForPullRequestData ?? []).map(decodeCommentLocation),
100
101
  resp.nextToken ? Option.some(resp.nextToken) : Option.none()
101
102
  ]))).pipe(Stream.flatMap(Stream.fromIterable));
103
+ const runCommentPages = (pullRequestId) => fetchCommentPages(pullRequestId).pipe(Stream.runCollect);
102
104
  // ---------------------------------------------------------------------------
103
105
  // Main
104
106
  // ---------------------------------------------------------------------------
@@ -106,6 +108,7 @@ export const getCommentsForPullRequest = (params) => Effect.gen(function* () {
106
108
  const config = yield* AwsClientConfig;
107
109
  const httpClient = yield* HttpClient.HttpClient;
108
110
  const credentials = yield* acquireCredentials(params.account.profile, params.account.region);
109
- return yield* Effect.provide(fetchCommentPages(params.pullRequestId, params.repositoryName).pipe(Stream.mapError((cause) => makeApiError("getCommentsForPullRequest", params.account.profile, params.account.region, cause)), Stream.runCollect), Layer.mergeAll(Layer.succeed(HttpClient.HttpClient, httpClient), Layer.succeed(Region.Region, params.account.region), Layer.succeed(Credentials.Credentials, credentials))).pipe(throttleRetry, Effect.map((chunk) => Array.from(chunk)), Effect.timeout(config.streamTimeout), Effect.catchTag("TimeoutException", (cause) => Effect.fail(makeApiError("getCommentsForPullRequest", params.account.profile, params.account.region, cause))));
111
+ const layer = Layer.mergeAll(Layer.succeed(HttpClient.HttpClient, httpClient), Layer.succeed(Region.Region, params.account.region), Layer.succeed(Credentials.Credentials, credentials));
112
+ return yield* Effect.provide(runCommentPages(params.pullRequestId).pipe(Effect.mapError((cause) => makeApiError("getCommentsForPullRequest", params.account.profile, params.account.region, cause))), layer).pipe(throttleRetry, Effect.map((chunk) => Array.from(chunk)), Effect.timeout(config.streamTimeout), Effect.catchTag("TimeoutException", (cause) => Effect.fail(makeApiError("getCommentsForPullRequest", params.account.profile, params.account.region, cause))));
110
113
  });
111
114
  //# sourceMappingURL=getCommentsForPullRequest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getCommentsForPullRequest.js","sourceRoot":"","sources":["../../src/AwsClient/getCommentsForPullRequest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getCommentsForPullRequest.js","sourceRoot":"","sources":["../../src/AwsClient/getCommentsForPullRequest.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,7 @@ export interface ListBranchesParams {
54
54
  export interface GetCommentsForPullRequestParams {
55
55
  readonly account: AccountParams;
56
56
  readonly pullRequestId: string;
57
+ /** @deprecated Currently unused — passing repositoryName without commit IDs triggers CommitIdRequiredException. Kept for API compatibility. */
57
58
  readonly repositoryName: string;
58
59
  }
59
60
  export interface UpdatePullRequestTitleParams {
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/AwsClient/internal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/AwsClient/internal.ts"],"names":[],"mappings":"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"}
package/dist/Domain.d.ts CHANGED
@@ -98,6 +98,7 @@ declare const PullRequest_base: Schema.Class<PullRequest, {
98
98
  destinationBranch: typeof Schema.String;
99
99
  isMergeable: typeof Schema.Boolean;
100
100
  isApproved: typeof Schema.Boolean;
101
+ commentCount: Schema.optional<typeof Schema.Number>;
101
102
  }, Schema.Struct.Encoded<{
102
103
  id: Schema.brand<typeof Schema.String, "PullRequestId">;
103
104
  title: typeof Schema.String;
@@ -113,6 +114,7 @@ declare const PullRequest_base: Schema.Class<PullRequest, {
113
114
  destinationBranch: typeof Schema.String;
114
115
  isMergeable: typeof Schema.Boolean;
115
116
  isApproved: typeof Schema.Boolean;
117
+ commentCount: Schema.optional<typeof Schema.Number>;
116
118
  }>, never, {
117
119
  readonly link: string;
118
120
  } & {
@@ -141,6 +143,8 @@ declare const PullRequest_base: Schema.Class<PullRequest, {
141
143
  readonly isApproved: boolean;
142
144
  } & {
143
145
  readonly description?: string | undefined;
146
+ } & {
147
+ readonly commentCount?: number | undefined;
144
148
  }, {}, {}>;
145
149
  /**
146
150
  * CodeCommit pull request.
@@ -215,6 +219,38 @@ export interface PRCommentLocation {
215
219
  readonly afterCommitId?: string;
216
220
  readonly comments: ReadonlyArray<CommentThread>;
217
221
  }
222
+ declare const PRCommentJson: Schema.Struct<{
223
+ id: typeof Schema.String;
224
+ content: typeof Schema.String;
225
+ author: typeof Schema.String;
226
+ creationDate: typeof Schema.String;
227
+ inReplyTo: Schema.optional<typeof Schema.String>;
228
+ deleted: typeof Schema.Boolean;
229
+ filePath: Schema.optional<typeof Schema.String>;
230
+ lineNumber: Schema.optional<typeof Schema.Number>;
231
+ }>;
232
+ export interface CommentThreadJsonEncoded {
233
+ readonly root: typeof PRCommentJson.Type;
234
+ readonly replies: ReadonlyArray<CommentThreadJsonEncoded>;
235
+ }
236
+ /**
237
+ * JSON-safe schema for comment locations (HTTP wire format).
238
+ * Dates are ISO strings, no branded types.
239
+ *
240
+ * @category Domain
241
+ */
242
+ export declare const PRCommentLocationJson: Schema.Struct<{
243
+ filePath: Schema.optional<typeof Schema.String>;
244
+ beforeCommitId: Schema.optional<typeof Schema.String>;
245
+ afterCommitId: Schema.optional<typeof Schema.String>;
246
+ comments: Schema.Array$<Schema.Schema<CommentThreadJsonEncoded, CommentThreadJsonEncoded, never>>;
247
+ }>;
248
+ /**
249
+ * Encode PRCommentLocations to JSON-safe format for HTTP responses.
250
+ *
251
+ * @category Domain
252
+ */
253
+ export declare const encodeCommentLocations: (locations: ReadonlyArray<PRCommentLocation>) => ReadonlyArray<typeof PRCommentLocationJson.Type>;
218
254
  declare const NotificationItem_base: Schema.Class<NotificationItem, {
219
255
  type: Schema.Literal<["error", "info", "warning", "success"]>;
220
256
  title: typeof Schema.String;
@@ -1 +1 @@
1
- {"version":3,"file":"Domain.d.ts","sourceRoot":"","sources":["../src/Domain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Domain.d.ts","sourceRoot":"","sources":["../src/Domain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAM/B;;;;GAIG;AACH,eAAO,MAAM,aAAa,qDAAoD,CAAA;AAC9E,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC,IAAI,CAAA;AAErD;;;;GAIG;AACH,eAAO,MAAM,cAAc,sDAAqD,CAAA;AAChF,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC,IAAI,CAAA;AAEvD;;;;GAIG;AACH,eAAO,MAAM,cAAc,sDAAqD,CAAA;AAChF,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC,IAAI,CAAA;AAEvD;;;;GAIG;AACH,eAAO,MAAM,SAAS,iDAAgD,CAAA;AACtE,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,IAAI,CAAA;AAE7C;;;;GAIG;AACH,eAAO,MAAM,SAAS,iDAAgD,CAAA;AACtE,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,IAAI,CAAA;AAM7C;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,oCAAmC,CAAA;AACjE,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC,IAAI,CAAA;AAE7D;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,yDAAwD,CAAA;AACrF,MAAM,MAAM,gBAAgB,GAAG,OAAO,gBAAgB,CAAC,IAAI,CAAA;AAE3D;;;;GAIG;AACH,eAAO,MAAM,SAAS,8CAA6C,CAAA;AACnE,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,IAAI,CAAA;;;;;;;;;;;;AAM7C;;;;GAIG;AACH,qBAAa,OAAQ,SAAQ,YAG3B;CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEL;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,gBAgB/B;IACA;;OAEG;IACH,IAAI,UAAU,IAAI,MAAM,CAEvB;CACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAED;;;;GAIG;AACH,qBAAa,SAAU,SAAQ,cAS7B;CAAG;AAEL;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,aAAa,CAAC,CAAA;CAC/C;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,aAAa,CAAC,CAAA;CAChD;AAMD,QAAA,MAAM,aAAa;;;;;;;;;EASjB,CAAA;AAEF,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,IAAI,EAAE,OAAO,aAAa,CAAC,IAAI,CAAA;IACxC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,wBAAwB,CAAC,CAAA;CAC1D;AAOD;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;;;EAKhC,CAAA;AAkBF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,GACjC,WAAW,aAAa,CAAC,iBAAiB,CAAC,KAC1C,aAAa,CAAC,OAAO,qBAAqB,CAAC,IAAI,CAM7C,CAAA;;;;;;;;;;;;;;;;;;;;AAML;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,qBAKpC;CAAG;AAEL;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,gBAAgB,CAAC,CAAA;CAChD;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAA;IAChC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAC1B;AAED;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,WAAW,CAAC,CAAA;IACjD,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,YAAY,CAAC,CAAA;IAC9C,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;IAC1B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,QAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,CAAA;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAC9B"}
package/dist/Domain.js CHANGED
@@ -95,7 +95,8 @@ export class PullRequest extends Schema.Class("PullRequest")({
95
95
  sourceBranch: Schema.String,
96
96
  destinationBranch: Schema.String,
97
97
  isMergeable: Schema.Boolean,
98
- isApproved: Schema.Boolean
98
+ isApproved: Schema.Boolean,
99
+ commentCount: Schema.optional(Schema.Number)
99
100
  }) {
100
101
  /**
101
102
  * AWS Console URL for this pull request.
@@ -121,6 +122,61 @@ export class PRComment extends Schema.Class("PRComment")({
121
122
  }) {
122
123
  }
123
124
  // ---------------------------------------------------------------------------
125
+ // JSON-safe comment schemas (for HTTP API wire format)
126
+ // ---------------------------------------------------------------------------
127
+ const PRCommentJson = Schema.Struct({
128
+ id: Schema.String,
129
+ content: Schema.String,
130
+ author: Schema.String,
131
+ creationDate: Schema.String,
132
+ inReplyTo: Schema.optional(Schema.String),
133
+ deleted: Schema.Boolean,
134
+ filePath: Schema.optional(Schema.String),
135
+ lineNumber: Schema.optional(Schema.Number)
136
+ });
137
+ const CommentThreadJson = Schema.Struct({
138
+ root: PRCommentJson,
139
+ replies: Schema.Array(Schema.suspend(() => CommentThreadJson))
140
+ });
141
+ /**
142
+ * JSON-safe schema for comment locations (HTTP wire format).
143
+ * Dates are ISO strings, no branded types.
144
+ *
145
+ * @category Domain
146
+ */
147
+ export const PRCommentLocationJson = Schema.Struct({
148
+ filePath: Schema.optional(Schema.String),
149
+ beforeCommitId: Schema.optional(Schema.String),
150
+ afterCommitId: Schema.optional(Schema.String),
151
+ comments: Schema.Array(CommentThreadJson)
152
+ });
153
+ // NOTE: replies of deleted root comments are omitted — matches UI behavior
154
+ // (deleted comments hide their subtree).
155
+ const serializeThread = (t) => ({
156
+ root: {
157
+ id: t.root.id,
158
+ content: t.root.content,
159
+ author: t.root.author,
160
+ creationDate: t.root.creationDate.toISOString(),
161
+ ...(t.root.inReplyTo != null ? { inReplyTo: t.root.inReplyTo } : {}),
162
+ deleted: t.root.deleted,
163
+ ...(t.root.filePath != null ? { filePath: t.root.filePath } : {}),
164
+ ...(t.root.lineNumber != null ? { lineNumber: t.root.lineNumber } : {})
165
+ },
166
+ replies: t.root.deleted ? [] : t.replies.map(serializeThread)
167
+ });
168
+ /**
169
+ * Encode PRCommentLocations to JSON-safe format for HTTP responses.
170
+ *
171
+ * @category Domain
172
+ */
173
+ export const encodeCommentLocations = (locations) => locations.map((loc) => ({
174
+ ...(loc.filePath != null ? { filePath: loc.filePath } : {}),
175
+ ...(loc.beforeCommitId != null ? { beforeCommitId: loc.beforeCommitId } : {}),
176
+ ...(loc.afterCommitId != null ? { afterCommitId: loc.afterCommitId } : {}),
177
+ comments: loc.comments.map(serializeThread)
178
+ }));
179
+ // ---------------------------------------------------------------------------
124
180
  // State Models
125
181
  // ---------------------------------------------------------------------------
126
182
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Domain.js","sourceRoot":"","sources":["../src/Domain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Domain.js","sourceRoot":"","sources":["../src/Domain.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { Option } from "effect";
2
+ import type { PullRequest } from "./Domain.js";
3
+ export interface HealthScoreBreakdown {
4
+ readonly label: string;
5
+ readonly value: number;
6
+ }
7
+ export type CategoryStatus = "positive" | "neutral" | "negative";
8
+ export interface HealthScoreCategory {
9
+ readonly label: string;
10
+ readonly description: string;
11
+ readonly status: CategoryStatus;
12
+ readonly statusLabel: string;
13
+ readonly value: number;
14
+ }
15
+ export interface HealthScore {
16
+ readonly total: number;
17
+ readonly breakdown: ReadonlyArray<HealthScoreBreakdown>;
18
+ readonly categories: ReadonlyArray<HealthScoreCategory>;
19
+ }
20
+ export type HealthScoreTier = "green" | "yellow" | "red";
21
+ export declare const calculateHealthScore: (pr: PullRequest, now: Date) => Option.Option<HealthScore>;
22
+ export declare const scoreTotalOr: (pr: PullRequest, now: Date, fallback: number) => number;
23
+ export declare const getScoreTier: (score: number) => HealthScoreTier;
24
+ //# sourceMappingURL=HealthScore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HealthScore.d.ts","sourceRoot":"","sources":["../src/HealthScore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,MAAM,QAAQ,CAAA;AACtC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAE9C,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,CAAA;AAEhE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAA;IAC/B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAA;IACvD,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAA;CACxD;AAED,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAA;AAYxD,eAAO,MAAM,oBAAoB,GAAI,IAAI,WAAW,EAAE,KAAK,IAAI,KAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAoG1F,CAAA;AAED,eAAO,MAAM,YAAY,GAAI,IAAI,WAAW,EAAE,KAAK,IAAI,EAAE,UAAU,MAAM,KAAG,MACqB,CAAA;AAEjG,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,KAAG,eAK1C,CAAA"}
@@ -0,0 +1,105 @@
1
+ import { Match, Option } from "effect";
2
+ const MS_PER_DAY = 86_400_000;
3
+ const round1 = (n) => Math.round(n * 10) / 10;
4
+ const clamp = (min, max, value) => Math.min(max, Math.max(min, value));
5
+ const daysBetween = (from, to) => Math.max(0, (to.getTime() - from.getTime()) / MS_PER_DAY);
6
+ const hasScope = (title) => /^\w+(\([^)]+\))?:/.test(title) || /^[A-Z]+-\d+:/.test(title);
7
+ export const calculateHealthScore = (pr, now) => {
8
+ if (pr.commentCount === undefined)
9
+ return Option.none();
10
+ const daysSinceLastActivity = daysBetween(pr.lastModifiedDate, now);
11
+ const daysSinceCreation = daysBetween(pr.creationDate, now);
12
+ const commentCount = pr.commentCount;
13
+ const scopeDetected = hasScope(pr.title);
14
+ const hasDescription = !!pr.description && pr.description.trim().length > 0;
15
+ const timeDecay = -(daysSinceLastActivity * 1.0);
16
+ const agePenalty = -(daysSinceCreation * 0.5);
17
+ const commentBonus = commentCount * 1.0;
18
+ const approvalBonus = pr.isApproved ? 2 : 0;
19
+ const conflictPenalty = pr.isMergeable ? 0 : -3;
20
+ const scopeBonus = scopeDetected ? 0.5 : 0;
21
+ const descriptionBonus = hasDescription ? 0.5 : 0;
22
+ const raw = 10 + timeDecay + agePenalty + commentBonus + approvalBonus + conflictPenalty + scopeBonus +
23
+ descriptionBonus;
24
+ const total = round1(clamp(0, 10, raw));
25
+ const breakdown = [
26
+ { label: "Base", value: 10 },
27
+ { label: "Time decay", value: round1(timeDecay) },
28
+ { label: "Age", value: round1(agePenalty) },
29
+ { label: "Comments", value: round1(commentBonus) },
30
+ { label: "Approval", value: approvalBonus },
31
+ { label: "Conflicts", value: conflictPenalty },
32
+ { label: "Scope", value: scopeBonus },
33
+ { label: "Description", value: descriptionBonus }
34
+ ];
35
+ const categories = [
36
+ {
37
+ label: "Activity",
38
+ description: `-1 per day since last update (${Math.round(daysSinceLastActivity)}d ago)`,
39
+ value: round1(timeDecay),
40
+ ...daysSinceLastActivity < 2
41
+ ? { status: "positive", statusLabel: "ACTIVE" }
42
+ : daysSinceLastActivity <= 7
43
+ ? { status: "neutral", statusLabel: "SLOWING" }
44
+ : { status: "negative", statusLabel: "STALE" }
45
+ },
46
+ {
47
+ label: "Age",
48
+ description: `-0.5 per day since creation (${Math.round(daysSinceCreation)}d old)`,
49
+ value: round1(agePenalty),
50
+ ...daysSinceCreation < 3
51
+ ? { status: "positive", statusLabel: "FRESH" }
52
+ : daysSinceCreation <= 14
53
+ ? { status: "neutral", statusLabel: "AGING" }
54
+ : { status: "negative", statusLabel: "OLD" }
55
+ },
56
+ {
57
+ label: "Engagement",
58
+ description: `+1 per comment (${commentCount} comments)`,
59
+ value: round1(commentBonus),
60
+ ...commentCount >= 3
61
+ ? { status: "positive", statusLabel: "ACTIVE" }
62
+ : commentCount >= 1
63
+ ? { status: "neutral", statusLabel: "QUIET" }
64
+ : { status: "negative", statusLabel: "SILENT" }
65
+ },
66
+ {
67
+ label: "Approval",
68
+ description: pr.isApproved ? "+2 bonus for approval" : "No approval yet (+2 when approved)",
69
+ value: approvalBonus,
70
+ ...pr.isApproved
71
+ ? { status: "positive", statusLabel: "APPROVED" }
72
+ : { status: "neutral", statusLabel: "PENDING" }
73
+ },
74
+ {
75
+ label: "Mergeable",
76
+ description: pr.isMergeable ? "No merge conflicts" : "-3 penalty for merge conflicts",
77
+ value: conflictPenalty,
78
+ ...pr.isMergeable
79
+ ? { status: "positive", statusLabel: "CLEAN" }
80
+ : { status: "negative", statusLabel: "CONFLICT" }
81
+ },
82
+ {
83
+ label: "Scope",
84
+ description: scopeDetected
85
+ ? "+0.5 bonus — conventional commit or ticket prefix detected"
86
+ : "No scope prefix found (e.g. feat(auth): or JIRA-123:)",
87
+ value: scopeBonus,
88
+ ...scopeDetected
89
+ ? { status: "positive", statusLabel: "DETECTED" }
90
+ : { status: "negative", statusLabel: "MISSING" }
91
+ },
92
+ {
93
+ label: "Description",
94
+ description: hasDescription ? "+0.5 bonus — PR description provided" : "No PR description provided",
95
+ value: descriptionBonus,
96
+ ...hasDescription
97
+ ? { status: "positive", statusLabel: "PROVIDED" }
98
+ : { status: "negative", statusLabel: "MISSING" }
99
+ }
100
+ ];
101
+ return Option.some({ total, breakdown, categories });
102
+ };
103
+ export const scoreTotalOr = (pr, now, fallback) => Option.match(calculateHealthScore(pr, now), { onNone: () => fallback, onSome: (s) => s.total });
104
+ export const getScoreTier = (score) => Match.value(score).pipe(Match.when((s) => s >= 7, () => "green"), Match.when((s) => s >= 4, () => "yellow"), Match.orElse(() => "red"));
105
+ //# sourceMappingURL=HealthScore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HealthScore.js","sourceRoot":"","sources":["../src/HealthScore.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"refresh.d.ts","sourceRoot":"","sources":["../../src/PRService/refresh.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAA0B,MAAM,EAA2B,MAAM,QAAQ,CAAA;AAChF,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAEzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAE5C,eAAO,MAAM,WAAW,GACtB,OAAO,OAAO,KACb,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,aAAa,GAAG,SAAS,GAAG,oBAAoB,CAwG3E,CAAA"}
1
+ {"version":3,"file":"refresh.d.ts","sourceRoot":"","sources":["../../src/PRService/refresh.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAA0B,MAAM,EAA2B,MAAM,QAAQ,CAAA;AAChF,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAEzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAW5C,eAAO,MAAM,WAAW,GACtB,OAAO,OAAO,KACb,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,aAAa,GAAG,SAAS,GAAG,oBAAoB,CA0I3E,CAAA"}
@@ -4,7 +4,10 @@
4
4
  import { Cause, Clock, DateTime, Effect, Stream, SubscriptionRef } from "effect";
5
5
  import { AwsClient } from "../AwsClient/index.js";
6
6
  import { ConfigService } from "../ConfigService/index.js";
7
+ import { PullRequest } from "../Domain.js";
7
8
  import { NotificationsService } from "../NotificationsService.js";
9
+ const countThreadComments = (thread) => 1 + thread.replies.reduce((sum, r) => sum + countThreadComments(r), 0);
10
+ const countAllComments = (locations) => locations.reduce((sum, loc) => sum + loc.comments.reduce((s, t) => s + countThreadComments(t), 0), 0);
8
11
  export const makeRefresh = (state) => Effect.gen(function* () {
9
12
  const configService = yield* ConfigService;
10
13
  const awsClient = yield* AwsClient;
@@ -69,6 +72,27 @@ export const makeRefresh = (state) => Effect.gen(function* () {
69
72
  statusDetail: undefined,
70
73
  lastUpdated: DateTime.toDate(DateTime.unsafeMake(now))
71
74
  }));
75
+ const currentState = yield* SubscriptionRef.get(state);
76
+ const enrichments = yield* Effect.forEach(currentState.pullRequests, (pr) => awsClient.getCommentsForPullRequest({
77
+ account: { profile: pr.account.id, region: pr.account.region },
78
+ pullRequestId: pr.id,
79
+ repositoryName: pr.repositoryName
80
+ }).pipe(Effect.map((locs) => ({ id: pr.id, accountId: pr.account.id, commentCount: countAllComments(locs) })), Effect.catchAll((e) => Effect.logWarning(`Comment enrichment failed for PR ${pr.id}: ${e}`).pipe(Effect.as(undefined)))), { concurrency: 3 });
81
+ const counts = new Map();
82
+ for (const r of enrichments) {
83
+ if (r !== undefined)
84
+ counts.set(`${r.accountId}:${r.id}`, r.commentCount);
85
+ }
86
+ if (counts.size > 0) {
87
+ yield* SubscriptionRef.update(state, (s) => ({
88
+ ...s,
89
+ pullRequests: s.pullRequests.map((p) => {
90
+ const key = `${p.account.id}:${p.id}`;
91
+ const cc = counts.get(key);
92
+ return cc !== undefined ? new PullRequest({ ...p, commentCount: cc }) : p;
93
+ })
94
+ }));
95
+ }
72
96
  }).pipe(Effect.withSpan("PRService.refresh"), Effect.timeout("120 seconds"), Effect.catchAllCause((cause) => {
73
97
  const errorStr = Cause.pretty(cause).split("\n")[0] ?? "Unknown error";
74
98
  return SubscriptionRef.update(state, (s) => ({ ...s, status: "error", error: errorStr }));
@@ -1 +1 @@
1
- {"version":3,"file":"refresh.js","sourceRoot":"","sources":["../../src/PRService/refresh.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"refresh.js","sourceRoot":"","sources":["../../src/PRService/refresh.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,34 +1,19 @@
1
1
  {
2
2
  "name": "@knpkv/codecommit-core",
3
- "version": "0.1.1",
3
+ "version": "0.2.0",
4
4
  "description": "Core logic for CodeCommit PR browser",
5
5
  "type": "module",
6
- "main": "src/index.ts",
6
+ "main": "dist/index.js",
7
7
  "exports": {
8
- ".": "./src/index.ts",
9
- "./Domain.js": "./src/Domain.ts",
10
- "./*.js": "./src/*.ts"
8
+ ".": "./dist/index.js",
9
+ "./*.js": "./dist/*.js"
11
10
  },
12
11
  "publishConfig": {
13
- "access": "public",
14
- "main": "dist/index.js",
15
- "types": "dist/dts/index.d.ts",
16
- "exports": {
17
- ".": "./dist/index.js",
18
- "./*.js": "./dist/*.js"
19
- }
12
+ "access": "public"
20
13
  },
21
14
  "files": [
22
15
  "dist"
23
16
  ],
24
- "scripts": {
25
- "prepack": "tsc",
26
- "build": "tsc",
27
- "check": "tsc -b tsconfig.json",
28
- "test": "vitest",
29
- "lint": "eslint \"{src,test}/**/*.ts\"",
30
- "docgen": "docgen"
31
- },
32
17
  "dependencies": {
33
18
  "@aws-sdk/credential-providers": "^3.974.0",
34
19
  "@effect-atom/atom": "latest",
@@ -38,5 +23,13 @@
38
23
  "distilled-aws": "0.0.21",
39
24
  "effect": "latest"
40
25
  },
41
- "devDependencies": {}
42
- }
26
+ "devDependencies": {},
27
+ "scripts": {
28
+ "build": "tsc",
29
+ "check": "tsc -b tsconfig.json",
30
+ "test": "vitest",
31
+ "lint": "eslint \"{src,test}/**/*.ts\"",
32
+ "docgen": "docgen"
33
+ },
34
+ "types": "dist/dts/index.d.ts"
35
+ }
package/src/index.ts DELETED
@@ -1,27 +0,0 @@
1
- /**
2
- * `@knpkv/codecommit-core` — Core logic for CodeCommit PR browser.
3
- *
4
- * Namespace re-exports for clean imports.
5
- *
6
- * @example
7
- * ```typescript
8
- * import { Domain, Errors, AwsClient } from "@knpkv/codecommit-core"
9
- *
10
- * const id: Domain.PullRequestId = ...
11
- * const error = new Errors.AwsApiError({ ... })
12
- * ```
13
- *
14
- * @module
15
- */
16
- export * as AwsClient from "./AwsClient/index.js"
17
- export * as AwsClientConfig from "./AwsClientConfig.js"
18
- export * as ConfigService from "./ConfigService/index.js"
19
- export * as DateUtils from "./DateUtils.js"
20
- export * as Domain from "./Domain.js"
21
- export * as Errors from "./Errors.js"
22
- export * as NotificationsService from "./NotificationsService.js"
23
- export * as PRService from "./PRService/index.js"
24
-
25
- // Re-export Effect dependencies for convenience
26
- export { Registry } from "@effect-atom/atom"
27
- export { Reactivity } from "@effect/experimental"