@knpkv/codecommit-core 0.5.0 → 0.5.1

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 (138) hide show
  1. package/dist/AwsClient/getDifferences.d.ts +16 -0
  2. package/dist/AwsClient/getDifferences.d.ts.map +1 -0
  3. package/dist/AwsClient/getDifferences.js +22 -0
  4. package/dist/AwsClient/getDifferences.js.map +1 -0
  5. package/dist/AwsClient/getPullRequest.d.ts.map +1 -1
  6. package/dist/AwsClient/getPullRequest.js +26 -5
  7. package/dist/AwsClient/getPullRequest.js.map +1 -1
  8. package/dist/AwsClient/getPullRequests.d.ts.map +1 -1
  9. package/dist/AwsClient/getPullRequests.js +29 -11
  10. package/dist/AwsClient/getPullRequests.js.map +1 -1
  11. package/dist/AwsClient/index.d.ts +21 -13
  12. package/dist/AwsClient/index.d.ts.map +1 -1
  13. package/dist/AwsClient/index.js +3 -1
  14. package/dist/AwsClient/index.js.map +1 -1
  15. package/dist/AwsClient/internal.d.ts +23 -0
  16. package/dist/AwsClient/internal.d.ts.map +1 -1
  17. package/dist/AwsClient/internal.js +4 -1
  18. package/dist/AwsClient/internal.js.map +1 -1
  19. package/dist/CacheService/Database.d.ts.map +1 -1
  20. package/dist/CacheService/Database.js +9 -1
  21. package/dist/CacheService/Database.js.map +1 -1
  22. package/dist/CacheService/index.d.ts +3 -2
  23. package/dist/CacheService/index.d.ts.map +1 -1
  24. package/dist/CacheService/index.js +2 -1
  25. package/dist/CacheService/index.js.map +1 -1
  26. package/dist/CacheService/migrations/0007_stats_columns.d.ts +5 -0
  27. package/dist/CacheService/migrations/0007_stats_columns.d.ts.map +1 -0
  28. package/dist/CacheService/migrations/0007_stats_columns.js +13 -0
  29. package/dist/CacheService/migrations/0007_stats_columns.js.map +1 -0
  30. package/dist/CacheService/migrations/0008_merged_by.d.ts +5 -0
  31. package/dist/CacheService/migrations/0008_merged_by.d.ts.map +1 -0
  32. package/dist/CacheService/migrations/0008_merged_by.js +4 -0
  33. package/dist/CacheService/migrations/0008_merged_by.js.map +1 -0
  34. package/dist/CacheService/migrations/0009_approved_by.d.ts +5 -0
  35. package/dist/CacheService/migrations/0009_approved_by.d.ts.map +1 -0
  36. package/dist/CacheService/migrations/0009_approved_by.js +4 -0
  37. package/dist/CacheService/migrations/0009_approved_by.js.map +1 -0
  38. package/dist/CacheService/migrations/0010_commented_by.d.ts +5 -0
  39. package/dist/CacheService/migrations/0010_commented_by.d.ts.map +1 -0
  40. package/dist/CacheService/migrations/0010_commented_by.js +4 -0
  41. package/dist/CacheService/migrations/0010_commented_by.js.map +1 -0
  42. package/dist/CacheService/repos/PullRequestRepo/index.d.ts +132 -0
  43. package/dist/CacheService/repos/PullRequestRepo/index.d.ts.map +1 -0
  44. package/dist/CacheService/repos/PullRequestRepo/index.js +35 -0
  45. package/dist/CacheService/repos/PullRequestRepo/index.js.map +1 -0
  46. package/dist/CacheService/repos/PullRequestRepo/internal.d.ts +72 -0
  47. package/dist/CacheService/repos/PullRequestRepo/internal.d.ts.map +1 -0
  48. package/dist/CacheService/repos/PullRequestRepo/internal.js +69 -0
  49. package/dist/CacheService/repos/PullRequestRepo/internal.js.map +1 -0
  50. package/dist/CacheService/repos/PullRequestRepo/mutations.d.ts +24 -0
  51. package/dist/CacheService/repos/PullRequestRepo/mutations.d.ts.map +1 -0
  52. package/dist/CacheService/repos/PullRequestRepo/mutations.js +94 -0
  53. package/dist/CacheService/repos/PullRequestRepo/mutations.js.map +1 -0
  54. package/dist/CacheService/repos/PullRequestRepo/queries.d.ts +113 -0
  55. package/dist/CacheService/repos/PullRequestRepo/queries.d.ts.map +1 -0
  56. package/dist/CacheService/repos/PullRequestRepo/queries.js +89 -0
  57. package/dist/CacheService/repos/PullRequestRepo/queries.js.map +1 -0
  58. package/dist/CacheService/repos/StatsRepo/index.d.ts +93 -0
  59. package/dist/CacheService/repos/StatsRepo/index.d.ts.map +1 -0
  60. package/dist/CacheService/repos/StatsRepo/index.js +41 -0
  61. package/dist/CacheService/repos/StatsRepo/index.js.map +1 -0
  62. package/dist/CacheService/repos/StatsRepo/internal.d.ts +120 -0
  63. package/dist/CacheService/repos/StatsRepo/internal.d.ts.map +1 -0
  64. package/dist/CacheService/repos/StatsRepo/internal.js +34 -0
  65. package/dist/CacheService/repos/StatsRepo/internal.js.map +1 -0
  66. package/dist/CacheService/repos/StatsRepo/queries.d.ts +42 -0
  67. package/dist/CacheService/repos/StatsRepo/queries.d.ts.map +1 -0
  68. package/dist/CacheService/repos/StatsRepo/queries.js +182 -0
  69. package/dist/CacheService/repos/StatsRepo/queries.js.map +1 -0
  70. package/dist/CacheService/repos/StatsRepo/reviewerData.d.ts +47 -0
  71. package/dist/CacheService/repos/StatsRepo/reviewerData.d.ts.map +1 -0
  72. package/dist/CacheService/repos/StatsRepo/reviewerData.js +172 -0
  73. package/dist/CacheService/repos/StatsRepo/reviewerData.js.map +1 -0
  74. package/dist/DateUtils.d.ts +28 -0
  75. package/dist/DateUtils.d.ts.map +1 -1
  76. package/dist/DateUtils.js +69 -1
  77. package/dist/DateUtils.js.map +1 -1
  78. package/dist/Domain.d.ts +13 -3
  79. package/dist/Domain.d.ts.map +1 -1
  80. package/dist/Domain.js +6 -5
  81. package/dist/Domain.js.map +1 -1
  82. package/dist/PRService/index.d.ts +3 -3
  83. package/dist/PRService/index.d.ts.map +1 -1
  84. package/dist/PRService/index.js +1 -1
  85. package/dist/PRService/index.js.map +1 -1
  86. package/dist/PRService/internal.d.ts +24 -2
  87. package/dist/PRService/internal.d.ts.map +1 -1
  88. package/dist/PRService/internal.js +23 -8
  89. package/dist/PRService/internal.js.map +1 -1
  90. package/dist/PRService/refresh.d.ts +1 -1
  91. package/dist/PRService/refresh.d.ts.map +1 -1
  92. package/dist/PRService/refresh.js +2 -0
  93. package/dist/PRService/refresh.js.map +1 -1
  94. package/dist/PRService/refreshDiffs.d.ts +16 -0
  95. package/dist/PRService/refreshDiffs.d.ts.map +1 -0
  96. package/dist/PRService/refreshDiffs.js +54 -0
  97. package/dist/PRService/refreshDiffs.js.map +1 -0
  98. package/dist/PRService/refreshEnrich.d.ts +1 -1
  99. package/dist/PRService/refreshEnrich.d.ts.map +1 -1
  100. package/dist/PRService/refreshEnrich.js +3 -1
  101. package/dist/PRService/refreshEnrich.js.map +1 -1
  102. package/dist/PRService/refreshFetch.d.ts +1 -1
  103. package/dist/PRService/refreshFetch.d.ts.map +1 -1
  104. package/dist/PRService/refreshFetch.js +12 -3
  105. package/dist/PRService/refreshFetch.js.map +1 -1
  106. package/dist/PRService/refreshHistory.d.ts +19 -0
  107. package/dist/PRService/refreshHistory.d.ts.map +1 -0
  108. package/dist/PRService/refreshHistory.js +110 -0
  109. package/dist/PRService/refreshHistory.js.map +1 -0
  110. package/dist/PRService/refreshResolve.d.ts +1 -1
  111. package/dist/PRService/refreshResolve.d.ts.map +1 -1
  112. package/dist/PRService/refreshResolve.js +1 -1
  113. package/dist/PRService/refreshResolve.js.map +1 -1
  114. package/dist/PRService/refreshScore.d.ts +1 -1
  115. package/dist/PRService/refreshScore.d.ts.map +1 -1
  116. package/dist/PRService/refreshScore.js +1 -1
  117. package/dist/PRService/refreshScore.js.map +1 -1
  118. package/dist/PRService/refreshSinglePR.d.ts +1 -1
  119. package/dist/PRService/refreshSinglePR.d.ts.map +1 -1
  120. package/dist/PRService/refreshSinglePR.js +4 -3
  121. package/dist/PRService/refreshSinglePR.js.map +1 -1
  122. package/dist/StatsService/WeeklyStats.d.ts +174 -0
  123. package/dist/StatsService/WeeklyStats.d.ts.map +1 -0
  124. package/dist/StatsService/WeeklyStats.js +110 -0
  125. package/dist/StatsService/WeeklyStats.js.map +1 -0
  126. package/dist/StatsService/index.d.ts +45 -0
  127. package/dist/StatsService/index.d.ts.map +1 -0
  128. package/dist/StatsService/index.js +145 -0
  129. package/dist/StatsService/index.js.map +1 -0
  130. package/dist/index.d.ts +1 -0
  131. package/dist/index.d.ts.map +1 -1
  132. package/dist/index.js +1 -0
  133. package/dist/index.js.map +1 -1
  134. package/package.json +1 -1
  135. package/dist/CacheService/repos/PullRequestRepo.d.ts +0 -112
  136. package/dist/CacheService/repos/PullRequestRepo.d.ts.map +0 -1
  137. package/dist/CacheService/repos/PullRequestRepo.js +0 -146
  138. package/dist/CacheService/repos/PullRequestRepo.js.map +0 -1
@@ -0,0 +1,110 @@
1
+ /**
2
+ * @module refreshHistory
3
+ *
4
+ * Mental model: On-demand historical sync. Three phases:
5
+ * 1. Fetch current OPEN PRs from AWS into cache
6
+ * 2. Re-check cached OPEN PRs to discover merged/closed transitions
7
+ * 3. Compute commented_by from pr_comments
8
+ *
9
+ * Think of it as a "catch-up" job that fills gaps the live polling can't cover.
10
+ *
11
+ * @internal
12
+ */
13
+ import { Effect, Option, Ref, Stream, SubscriptionRef } from "effect";
14
+ import { AwsClient } from "../AwsClient/index.js";
15
+ import { PullRequestRepo } from "../CacheService/repos/PullRequestRepo/index.js";
16
+ import { ConfigService } from "../ConfigService/index.js";
17
+ import { parseISOWeek } from "../DateUtils.js";
18
+ import { decodeCachedPR, prToUpsertInput } from "./internal.js";
19
+ export const syncWeek = Effect.fn("syncWeek")(function* (state, week) {
20
+ yield* Effect.gen(function* () {
21
+ const range = Option.getOrUndefined(parseISOWeek(week));
22
+ if (!range) {
23
+ yield* Effect.logWarning(`syncWeek: invalid week format "${week}"`);
24
+ return;
25
+ }
26
+ const awsClient = yield* AwsClient;
27
+ const prRepo = yield* PullRequestRepo;
28
+ const configService = yield* ConfigService;
29
+ const config = yield* configService.load.pipe(Effect.catchAll(() => Effect.succeed(undefined)));
30
+ if (!config) {
31
+ yield* Effect.logWarning("syncWeek: no config found");
32
+ return;
33
+ }
34
+ const enabledAccounts = config.accounts.filter((a) => a.enabled);
35
+ yield* Effect.logInfo(`syncWeek ${week}: ${enabledAccounts.length} accounts`);
36
+ yield* SubscriptionRef.update(state, (s) => ({
37
+ ...s,
38
+ status: "loading",
39
+ statusDetail: `syncing ${week}`
40
+ }));
41
+ // Phase 1: Fetch current OPEN PRs from AWS to populate cache
42
+ const fetchedRef = yield* Ref.make(0);
43
+ const accountRegions = enabledAccounts.flatMap((account) => account.regions.map((region) => ({ account, region })));
44
+ yield* Effect.forEach(accountRegions, ({ account, region }) => Effect.gen(function* () {
45
+ const label = `${account.profile} (${region})`;
46
+ yield* SubscriptionRef.update(state, (s) => ({
47
+ ...s,
48
+ statusDetail: `syncing ${week} — ${label} fetching PRs`
49
+ }));
50
+ const identity = yield* awsClient
51
+ .getCallerIdentity({ profile: account.profile, region })
52
+ .pipe(Effect.catchAll(() => Effect.succeed({ accountId: account.profile, arn: "" })));
53
+ const awsAccountId = identity.accountId;
54
+ yield* awsClient
55
+ .getPullRequests({ profile: account.profile, region })
56
+ .pipe(Stream.runForEach((pr) => prRepo.upsert(prToUpsertInput(pr, awsAccountId)).pipe(Effect.tap(() => Ref.updateAndGet(fetchedRef, (n) => n + 1).pipe(Effect.flatMap((n) => SubscriptionRef.update(state, (s) => ({
57
+ ...s,
58
+ statusDetail: `syncing ${week} — ${label} (${n} PRs)`
59
+ }))))), Effect.catchAll(() => Effect.void))), Effect.catchAll((e) => Effect.logWarning("sync fetch error", e)));
60
+ }), { discard: true });
61
+ const fetched = yield* Ref.get(fetchedRef);
62
+ yield* Effect.logInfo(`syncWeek ${week}: Phase 1 done — ${fetched} PRs fetched`);
63
+ // Phase 2: Re-check all cached OPEN PRs to discover merged/closed ones
64
+ yield* SubscriptionRef.update(state, (s) => ({
65
+ ...s,
66
+ statusDetail: `syncing ${week} — checking PR statuses`
67
+ }));
68
+ const openPRs = yield* prRepo.findStaleOpen("9999-12-31T23:59:59Z").pipe(Effect.catchAll(() => Effect.succeed([])));
69
+ const transitionedRef = yield* Ref.make(0);
70
+ yield* Effect.forEach(openPRs, (pr) => awsClient
71
+ .getPullRequest({
72
+ account: { profile: pr.accountProfile, region: pr.accountRegion },
73
+ pullRequestId: pr.id
74
+ })
75
+ .pipe(Effect.flatMap((detail) => {
76
+ if (detail.status !== "OPEN") {
77
+ return prRepo
78
+ .updateStatusAndClosedAt(pr.awsAccountId, pr.id, detail.status, detail.lastActivityDate.toISOString(), detail.mergedBy, detail.approvedBy)
79
+ .pipe(Effect.tap(() => Ref.updateAndGet(transitionedRef, (n) => n + 1).pipe(Effect.flatMap((n) => SubscriptionRef.update(state, (s) => ({
80
+ ...s,
81
+ statusDetail: `syncing ${week} — ${n} status updates`
82
+ }))))));
83
+ }
84
+ return Effect.void;
85
+ }), Effect.catchAll(() => Effect.void)), { concurrency: 5, discard: true });
86
+ const transitioned = yield* Ref.get(transitionedRef);
87
+ yield* Effect.logInfo(`syncWeek ${week}: Phase 2 done — ${openPRs.length} checked, ${transitioned} transitioned`);
88
+ // Phase 3: Compute commented_by from pr_comments
89
+ yield* SubscriptionRef.update(state, (s) => ({
90
+ ...s,
91
+ statusDetail: `syncing ${week} — computing commenters`
92
+ }));
93
+ yield* prRepo.refreshCommentedBy().pipe(Effect.catchAll((e) => Effect.logWarning("refreshCommentedBy failed", e)));
94
+ // Reload PRs from DB so SSE clients get fresh data (incl. approvedBy, commentedBy)
95
+ const freshPRs = yield* prRepo.findAll().pipe(Effect.map((rows) => rows.map((r) => decodeCachedPR(r))), Effect.catchAll(() => Effect.succeed([])));
96
+ yield* SubscriptionRef.update(state, ({ statusDetail: _, ...s }) => ({
97
+ ...s,
98
+ status: "idle",
99
+ pullRequests: freshPRs
100
+ }));
101
+ }).pipe(Effect.catchAll((e) => Effect.gen(function* () {
102
+ yield* Effect.logWarning("syncWeek failed", e);
103
+ yield* SubscriptionRef.update(state, (s) => ({
104
+ ...s,
105
+ status: "error",
106
+ error: `History sync failed: ${String(e)}`
107
+ }));
108
+ })));
109
+ });
110
+ //# sourceMappingURL=refreshHistory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"refreshHistory.js","sourceRoot":"","sources":["../../src/PRService/refreshHistory.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  import { Effect, Ref } from "effect";
6
6
  import { AwsClient } from "../AwsClient/index.js";
7
7
  import { NotificationRepo } from "../CacheService/repos/NotificationRepo.js";
8
- import { PullRequestRepo } from "../CacheService/repos/PullRequestRepo.js";
8
+ import { PullRequestRepo } from "../CacheService/repos/PullRequestRepo/index.js";
9
9
  import { SubscriptionRepo } from "../CacheService/repos/SubscriptionRepo.js";
10
10
  import { ConfigService } from "../ConfigService/index.js";
11
11
  import type { AccountConfig } from "../ConfigService/internal.js";
@@ -1 +1 @@
1
- {"version":3,"file":"refreshResolve.d.ts","sourceRoot":"","sources":["../../src/PRService/refreshResolve.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAmB,MAAM,EAAE,GAAG,EAAmB,MAAM,QAAQ,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAA;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAEjE,OAAO,EAAkB,KAAK,OAAO,EAAE,MAAM,eAAe,CAAA;AAE5D,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,eAAe,EAAE,aAAa,CAAC,aAAa,CAAC,CAAA;IACtD,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1C,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;IAC5C,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;CACzC;AAqCD,eAAO,MAAM,eAAe,GAAI,OAAO,OAAO;;;;;;;;;qJAyE1C,CAAA"}
1
+ {"version":3,"file":"refreshResolve.d.ts","sourceRoot":"","sources":["../../src/PRService/refreshResolve.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAmB,MAAM,EAAE,GAAG,EAAmB,MAAM,QAAQ,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAA;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAEjE,OAAO,EAAkB,KAAK,OAAO,EAAE,MAAM,eAAe,CAAA;AAE5D,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,eAAe,EAAE,aAAa,CAAC,aAAa,CAAC,CAAA;IACtD,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1C,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;IAC5C,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;CACzC;AAqCD,eAAO,MAAM,eAAe,GAAI,OAAO,OAAO;;;;;;;;;qJAyE1C,CAAA"}
@@ -5,7 +5,7 @@
5
5
  import { Clock, DateTime, Effect, Ref, SubscriptionRef } from "effect";
6
6
  import { AwsClient } from "../AwsClient/index.js";
7
7
  import { NotificationRepo } from "../CacheService/repos/NotificationRepo.js";
8
- import { PullRequestRepo } from "../CacheService/repos/PullRequestRepo.js";
8
+ import { PullRequestRepo } from "../CacheService/repos/PullRequestRepo/index.js";
9
9
  import { SubscriptionRepo } from "../CacheService/repos/SubscriptionRepo.js";
10
10
  import { ConfigService } from "../ConfigService/index.js";
11
11
  import { decodeCachedPR } from "./internal.js";
@@ -1 +1 @@
1
- {"version":3,"file":"refreshResolve.js","sourceRoot":"","sources":["../../src/PRService/refreshResolve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"refreshResolve.js","sourceRoot":"","sources":["../../src/PRService/refreshResolve.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  * Phase 5: Calculate and store health scores.
4
4
  */
5
5
  import { Effect } from "effect";
6
- import { PullRequestRepo } from "../CacheService/repos/PullRequestRepo.js";
6
+ import { PullRequestRepo } from "../CacheService/repos/PullRequestRepo/index.js";
7
7
  import { type PRState } from "./internal.js";
8
8
  export declare const calculateHealthScores: (state: PRState) => Effect.Effect<void, never, PullRequestRepo>;
9
9
  //# sourceMappingURL=refreshScore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"refreshScore.d.ts","sourceRoot":"","sources":["../../src/PRService/refreshScore.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAmB,MAAM,EAAmB,MAAM,QAAQ,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAA;AAE1E,OAAO,EAAkB,KAAK,OAAO,EAAE,MAAM,eAAe,CAAA;AAE5D,eAAO,MAAM,qBAAqB,GAChC,OAAO,OAAO,KACb,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,eAAe,CAuBzC,CAAA"}
1
+ {"version":3,"file":"refreshScore.d.ts","sourceRoot":"","sources":["../../src/PRService/refreshScore.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAmB,MAAM,EAAmB,MAAM,QAAQ,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAA;AAEhF,OAAO,EAAkB,KAAK,OAAO,EAAE,MAAM,eAAe,CAAA;AAE5D,eAAO,MAAM,qBAAqB,GAChC,OAAO,OAAO,KACb,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,eAAe,CAuBzC,CAAA"}
@@ -3,7 +3,7 @@
3
3
  * Phase 5: Calculate and store health scores.
4
4
  */
5
5
  import { Clock, DateTime, Effect, SubscriptionRef } from "effect";
6
- import { PullRequestRepo } from "../CacheService/repos/PullRequestRepo.js";
6
+ import { PullRequestRepo } from "../CacheService/repos/PullRequestRepo/index.js";
7
7
  import { scoreTotalOr } from "../HealthScore.js";
8
8
  import { decodeCachedPR } from "./internal.js";
9
9
  export const calculateHealthScores = (state) => Effect.gen(function* () {
@@ -1 +1 @@
1
- {"version":3,"file":"refreshScore.js","sourceRoot":"","sources":["../../src/PRService/refreshScore.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAA;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,cAAc,EAAgB,MAAM,eAAe,CAAA;AAE5D,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,KAAc,EAC+B,EAAE,CAC/C,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,eAAe,CAAA;IAErC,KAAK,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3C,GAAG,CAAC;QACJ,YAAY,EAAE,2BAA2B;KAC1C,CAAC,CAAC,CAAA;IAEH,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACzF,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAA;IACjD,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAA;IACjE,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CACnB,SAAS,EACT,CAAC,GAAG,EAAE,EAAE;QACN,MAAM,EAAE,GAAG,cAAc,CAAC,GAAG,CAAC,CAAA;QAC9B,MAAM,KAAK,GAAG,YAAY,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;QAC3C,OAAO,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,IAAI,CACnE,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CACnC,CAAA;IACH,CAAC,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAA;AACH,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"refreshScore.js","sourceRoot":"","sources":["../../src/PRService/refreshScore.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAA;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,cAAc,EAAgB,MAAM,eAAe,CAAA;AAE5D,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,KAAc,EAC+B,EAAE,CAC/C,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,eAAe,CAAA;IAErC,KAAK,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3C,GAAG,CAAC;QACJ,YAAY,EAAE,2BAA2B;KAC1C,CAAC,CAAC,CAAA;IAEH,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACzF,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAA;IACjD,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAA;IACjE,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CACnB,SAAS,EACT,CAAC,GAAG,EAAE,EAAE;QACN,MAAM,EAAE,GAAG,cAAc,CAAC,GAAG,CAAC,CAAA;QAC9B,MAAM,KAAK,GAAG,YAAY,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;QAC3C,OAAO,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,IAAI,CACnE,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CACnC,CAAA;IACH,CAAC,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAA;AACH,CAAC,CAAC,CAAA"}
@@ -5,7 +5,7 @@ import { Effect } from "effect";
5
5
  import { AwsClient } from "../AwsClient/index.js";
6
6
  import { CommentRepo } from "../CacheService/repos/CommentRepo.js";
7
7
  import { NotificationRepo } from "../CacheService/repos/NotificationRepo.js";
8
- import { PullRequestRepo } from "../CacheService/repos/PullRequestRepo.js";
8
+ import { PullRequestRepo } from "../CacheService/repos/PullRequestRepo/index.js";
9
9
  import { SubscriptionRepo } from "../CacheService/repos/SubscriptionRepo.js";
10
10
  import { ConfigService } from "../ConfigService/index.js";
11
11
  import { type PRState } from "./internal.js";
@@ -1 +1 @@
1
- {"version":3,"file":"refreshSinglePR.d.ts","sourceRoot":"","sources":["../../src/PRService/refreshSinglePR.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAS,MAAM,EAA2B,MAAM,QAAQ,CAAA;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAA;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAE5E,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAA;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAEzD,OAAO,EAAoB,KAAK,OAAO,EAAE,MAAM,eAAe,CAAA;AAqB9D,eAAO,MAAM,mBAAmB,GAC9B,OAAO,OAAO,wNAsGV,CAAA"}
1
+ {"version":3,"file":"refreshSinglePR.d.ts","sourceRoot":"","sources":["../../src/PRService/refreshSinglePR.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAS,MAAM,EAA2B,MAAM,QAAQ,CAAA;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAA;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAE5E,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAA;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAEzD,OAAO,EAAoB,KAAK,OAAO,EAAE,MAAM,eAAe,CAAA;AAqB9D,eAAO,MAAM,mBAAmB,GAC9B,OAAO,OAAO,wNAsGV,CAAA"}
@@ -6,9 +6,10 @@ import { AwsClient } from "../AwsClient/index.js";
6
6
  import { diffComments, diffPR } from "../CacheService/diff.js";
7
7
  import { CommentRepo } from "../CacheService/repos/CommentRepo.js";
8
8
  import { NotificationRepo } from "../CacheService/repos/NotificationRepo.js";
9
- import { PullRequestRepo } from "../CacheService/repos/PullRequestRepo.js";
9
+ import { PullRequestRepo } from "../CacheService/repos/PullRequestRepo/index.js";
10
10
  import { SubscriptionRepo } from "../CacheService/repos/SubscriptionRepo.js";
11
11
  import { ConfigService } from "../ConfigService/index.js";
12
+ import { codecommitConsoleUrl } from "../Domain.js";
12
13
  import { countAllComments } from "./internal.js";
13
14
  /** Resolve profile/region from any cached PR with matching awsAccountId, or from config */
14
15
  const resolveAccountFromCache = (prRepo, awsAccountId) => Effect.gen(function* () {
@@ -77,8 +78,8 @@ export const makeRefreshSinglePR = (state) => Effect.fn("PRService.refreshSingle
77
78
  isMergeable: cached ? (cached.isMergeable ? 1 : 0) : detail.status === "MERGED" ? 1 : 0,
78
79
  isApproved: cached ? (cached.isApproved ? 1 : 0) : detail.status === "MERGED" ? 1 : 0,
79
80
  commentCount: countAllComments(locs),
80
- link: cached?.link ?? pr?.link
81
- ?? `https://${account.region}.console.aws.amazon.com/codesuite/codecommit/repositories/${detail.repositoryName}/pull-requests/${prId}?region=${account.region}`
81
+ link: cached?.link ?? pr?.link ?? codecommitConsoleUrl(account.region, detail.repositoryName, prId),
82
+ approvedBy: cached?.approvedBy ?? []
82
83
  };
83
84
  // Diff for subscribed PRs
84
85
  const isSubscribed = yield* subscriptionRepo.isSubscribed(awsAccountId, prId).pipe(Effect.catchAll(() => Effect.succeed(false)));
@@ -1 +1 @@
1
- {"version":3,"file":"refreshSinglePR.js","sourceRoot":"","sources":["../../src/PRService/refreshSinglePR.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"refreshSinglePR.js","sourceRoot":"","sources":["../../src/PRService/refreshSinglePR.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,174 @@
1
+ /**
2
+ * @module WeeklyStats
3
+ *
4
+ * Mental model: this is the **client-safe response schema** — the single
5
+ * contract between server-side stats computation and client-side rendering.
6
+ * It contains no server dependencies; only pure Schema definitions that both
7
+ * sides can import without pulling in AWS SDK or database code.
8
+ *
9
+ * - Pure `Schema.Struct` definition — serialisable to JSON automatically.
10
+ * - Sub-schemas are named consts; companion `declare namespace` exposes their
11
+ * types as `WeeklyStats.Contributor`, `WeeklyStats.ActivePR`, etc.
12
+ *
13
+ * @category Schema
14
+ */
15
+ import { Schema } from "effect";
16
+ declare const Contributor: Schema.Struct<{
17
+ author: typeof Schema.String;
18
+ prCount: typeof Schema.Number;
19
+ }>;
20
+ declare const Reviewer: Schema.Struct<{
21
+ author: typeof Schema.String;
22
+ commentCount: typeof Schema.Number;
23
+ }>;
24
+ declare const Approver: Schema.Struct<{
25
+ author: typeof Schema.String;
26
+ approvalCount: typeof Schema.Number;
27
+ }>;
28
+ declare const ActivePR: Schema.Struct<{
29
+ id: typeof Schema.String;
30
+ title: typeof Schema.String;
31
+ author: typeof Schema.String;
32
+ repositoryName: typeof Schema.String;
33
+ commentCount: typeof Schema.Number;
34
+ awsAccountId: typeof Schema.String;
35
+ }>;
36
+ declare const SizeDistribution: Schema.Struct<{
37
+ small: typeof Schema.Number;
38
+ medium: typeof Schema.Number;
39
+ large: typeof Schema.Number;
40
+ extraLarge: typeof Schema.Number;
41
+ }>;
42
+ declare const DiffSize: Schema.Struct<{
43
+ filesAdded: typeof Schema.Number;
44
+ filesModified: typeof Schema.Number;
45
+ filesDeleted: typeof Schema.Number;
46
+ }>;
47
+ declare const DiffByContributor: Schema.Struct<{
48
+ author: typeof Schema.String;
49
+ avgFilesChanged: typeof Schema.Number;
50
+ prCount: typeof Schema.Number;
51
+ }>;
52
+ declare const StalePR: Schema.Struct<{
53
+ id: typeof Schema.String;
54
+ title: typeof Schema.String;
55
+ author: typeof Schema.String;
56
+ repositoryName: typeof Schema.String;
57
+ daysSinceActivity: typeof Schema.Number;
58
+ awsAccountId: typeof Schema.String;
59
+ }>;
60
+ declare const BusFactor: Schema.Struct<{
61
+ topContributorShare: typeof Schema.Number;
62
+ uniqueContributors: typeof Schema.Number;
63
+ }>;
64
+ export declare const WeeklyStats: Schema.Struct<{
65
+ week: typeof Schema.String;
66
+ weekStart: typeof Schema.String;
67
+ weekEnd: typeof Schema.String;
68
+ dataAvailableSince: Schema.NullOr<typeof Schema.String>;
69
+ prsCreated: typeof Schema.Number;
70
+ prsMerged: typeof Schema.Number;
71
+ prsClosed: typeof Schema.Number;
72
+ totalComments: typeof Schema.Number;
73
+ topContributors: Schema.Array$<Schema.Struct<{
74
+ author: typeof Schema.String;
75
+ prCount: typeof Schema.Number;
76
+ }>>;
77
+ topReviewers: Schema.Array$<Schema.Struct<{
78
+ author: typeof Schema.String;
79
+ commentCount: typeof Schema.Number;
80
+ }>>;
81
+ topApprovers: Schema.Array$<Schema.Struct<{
82
+ author: typeof Schema.String;
83
+ approvalCount: typeof Schema.Number;
84
+ }>>;
85
+ medianTimeToMerge: Schema.NullOr<typeof Schema.Number>;
86
+ medianTimeToFirstReview: Schema.NullOr<typeof Schema.Number>;
87
+ medianTimeToAddressFeedback: Schema.NullOr<typeof Schema.Number>;
88
+ mergeTimeDetails: Schema.Array$<Schema.Struct<{
89
+ prId: typeof Schema.String;
90
+ prTitle: typeof Schema.String;
91
+ author: typeof Schema.String;
92
+ repositoryName: typeof Schema.String;
93
+ awsAccountId: typeof Schema.String;
94
+ durationMs: typeof Schema.Number;
95
+ fromLabel: typeof Schema.String;
96
+ toLabel: typeof Schema.String;
97
+ }>>;
98
+ firstReviewDetails: Schema.Array$<Schema.Struct<{
99
+ prId: typeof Schema.String;
100
+ prTitle: typeof Schema.String;
101
+ author: typeof Schema.String;
102
+ repositoryName: typeof Schema.String;
103
+ awsAccountId: typeof Schema.String;
104
+ durationMs: typeof Schema.Number;
105
+ fromLabel: typeof Schema.String;
106
+ toLabel: typeof Schema.String;
107
+ }>>;
108
+ feedbackDetails: Schema.Array$<Schema.Struct<{
109
+ prId: typeof Schema.String;
110
+ prTitle: typeof Schema.String;
111
+ author: typeof Schema.String;
112
+ repositoryName: typeof Schema.String;
113
+ awsAccountId: typeof Schema.String;
114
+ durationMs: typeof Schema.Number;
115
+ fromLabel: typeof Schema.String;
116
+ toLabel: typeof Schema.String;
117
+ }>>;
118
+ mostActivePRs: Schema.Array$<Schema.Struct<{
119
+ id: typeof Schema.String;
120
+ title: typeof Schema.String;
121
+ author: typeof Schema.String;
122
+ repositoryName: typeof Schema.String;
123
+ commentCount: typeof Schema.Number;
124
+ awsAccountId: typeof Schema.String;
125
+ }>>;
126
+ prSizeDistribution: Schema.Struct<{
127
+ small: typeof Schema.Number;
128
+ medium: typeof Schema.Number;
129
+ large: typeof Schema.Number;
130
+ extraLarge: typeof Schema.Number;
131
+ }>;
132
+ avgDiffSize: Schema.NullOr<Schema.Struct<{
133
+ filesAdded: typeof Schema.Number;
134
+ filesModified: typeof Schema.Number;
135
+ filesDeleted: typeof Schema.Number;
136
+ }>>;
137
+ diffSizeByContributor: Schema.Array$<Schema.Struct<{
138
+ author: typeof Schema.String;
139
+ avgFilesChanged: typeof Schema.Number;
140
+ prCount: typeof Schema.Number;
141
+ }>>;
142
+ stalePRs: Schema.Array$<Schema.Struct<{
143
+ id: typeof Schema.String;
144
+ title: typeof Schema.String;
145
+ author: typeof Schema.String;
146
+ repositoryName: typeof Schema.String;
147
+ daysSinceActivity: typeof Schema.Number;
148
+ awsAccountId: typeof Schema.String;
149
+ }>>;
150
+ reviewCoverage: Schema.NullOr<typeof Schema.Number>;
151
+ approvalRate: Schema.NullOr<typeof Schema.Number>;
152
+ busFactor: Schema.NullOr<Schema.Struct<{
153
+ topContributorShare: typeof Schema.Number;
154
+ uniqueContributors: typeof Schema.Number;
155
+ }>>;
156
+ availableRepos: Schema.Array$<typeof Schema.String>;
157
+ availableAuthors: Schema.Array$<typeof Schema.String>;
158
+ availableAccounts: Schema.Array$<typeof Schema.String>;
159
+ }>;
160
+ export type WeeklyStats = typeof WeeklyStats.Type;
161
+ export declare namespace WeeklyStats {
162
+ /** @category models */
163
+ type Contributor = typeof Contributor.Type;
164
+ type Reviewer = typeof Reviewer.Type;
165
+ type Approver = typeof Approver.Type;
166
+ type ActivePR = typeof ActivePR.Type;
167
+ type SizeDistribution = typeof SizeDistribution.Type;
168
+ type DiffSize = typeof DiffSize.Type;
169
+ type DiffByContributor = typeof DiffByContributor.Type;
170
+ type StalePR = typeof StalePR.Type;
171
+ type BusFactor = typeof BusFactor.Type;
172
+ }
173
+ export {};
174
+ //# sourceMappingURL=WeeklyStats.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WeeklyStats.d.ts","sourceRoot":"","sources":["../../src/StatsService/WeeklyStats.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAM/B,QAAA,MAAM,WAAW;;;EAGf,CAAA;AAEF,QAAA,MAAM,QAAQ;;;EAGZ,CAAA;AAEF,QAAA,MAAM,QAAQ;;;EAGZ,CAAA;AAEF,QAAA,MAAM,QAAQ;;;;;;;EAOZ,CAAA;AAEF,QAAA,MAAM,gBAAgB;;;;;EAKpB,CAAA;AAEF,QAAA,MAAM,QAAQ;;;;EAIZ,CAAA;AAEF,QAAA,MAAM,iBAAiB;;;;EAIrB,CAAA;AAEF,QAAA,MAAM,OAAO;;;;;;;EAOX,CAAA;AAEF,QAAA,MAAM,SAAS;;;EAGb,CAAA;AAiBF,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoCtB,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,IAAI,CAAA;AAMjD,MAAM,CAAC,OAAO,WAAW,WAAW,CAAC;IACnC,uBAAuB;IACvB,KAAY,WAAW,GAAG,OAAO,WAAW,CAAC,IAAI,CAAA;IACjD,KAAY,QAAQ,GAAG,OAAO,QAAQ,CAAC,IAAI,CAAA;IAC3C,KAAY,QAAQ,GAAG,OAAO,QAAQ,CAAC,IAAI,CAAA;IAC3C,KAAY,QAAQ,GAAG,OAAO,QAAQ,CAAC,IAAI,CAAA;IAC3C,KAAY,gBAAgB,GAAG,OAAO,gBAAgB,CAAC,IAAI,CAAA;IAC3D,KAAY,QAAQ,GAAG,OAAO,QAAQ,CAAC,IAAI,CAAA;IAC3C,KAAY,iBAAiB,GAAG,OAAO,iBAAiB,CAAC,IAAI,CAAA;IAC7D,KAAY,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;IACzC,KAAY,SAAS,GAAG,OAAO,SAAS,CAAC,IAAI,CAAA;CAC9C"}
@@ -0,0 +1,110 @@
1
+ /**
2
+ * @module WeeklyStats
3
+ *
4
+ * Mental model: this is the **client-safe response schema** — the single
5
+ * contract between server-side stats computation and client-side rendering.
6
+ * It contains no server dependencies; only pure Schema definitions that both
7
+ * sides can import without pulling in AWS SDK or database code.
8
+ *
9
+ * - Pure `Schema.Struct` definition — serialisable to JSON automatically.
10
+ * - Sub-schemas are named consts; companion `declare namespace` exposes their
11
+ * types as `WeeklyStats.Contributor`, `WeeklyStats.ActivePR`, etc.
12
+ *
13
+ * @category Schema
14
+ */
15
+ import { Schema } from "effect";
16
+ // ---------------------------------------------------------------------------
17
+ // Sub-schemas
18
+ // ---------------------------------------------------------------------------
19
+ const Contributor = Schema.Struct({
20
+ author: Schema.String,
21
+ prCount: Schema.Number
22
+ });
23
+ const Reviewer = Schema.Struct({
24
+ author: Schema.String,
25
+ commentCount: Schema.Number
26
+ });
27
+ const Approver = Schema.Struct({
28
+ author: Schema.String,
29
+ approvalCount: Schema.Number
30
+ });
31
+ const ActivePR = Schema.Struct({
32
+ id: Schema.String,
33
+ title: Schema.String,
34
+ author: Schema.String,
35
+ repositoryName: Schema.String,
36
+ commentCount: Schema.Number,
37
+ awsAccountId: Schema.String
38
+ });
39
+ const SizeDistribution = Schema.Struct({
40
+ small: Schema.Number,
41
+ medium: Schema.Number,
42
+ large: Schema.Number,
43
+ extraLarge: Schema.Number
44
+ });
45
+ const DiffSize = Schema.Struct({
46
+ filesAdded: Schema.Number,
47
+ filesModified: Schema.Number,
48
+ filesDeleted: Schema.Number
49
+ });
50
+ const DiffByContributor = Schema.Struct({
51
+ author: Schema.String,
52
+ avgFilesChanged: Schema.Number,
53
+ prCount: Schema.Number
54
+ });
55
+ const StalePR = Schema.Struct({
56
+ id: Schema.String,
57
+ title: Schema.String,
58
+ author: Schema.String,
59
+ repositoryName: Schema.String,
60
+ daysSinceActivity: Schema.Number,
61
+ awsAccountId: Schema.String
62
+ });
63
+ const BusFactor = Schema.Struct({
64
+ topContributorShare: Schema.Number,
65
+ uniqueContributors: Schema.Number
66
+ });
67
+ const LifecycleDetail = Schema.Struct({
68
+ prId: Schema.String,
69
+ prTitle: Schema.String,
70
+ author: Schema.String,
71
+ repositoryName: Schema.String,
72
+ awsAccountId: Schema.String,
73
+ durationMs: Schema.Number,
74
+ fromLabel: Schema.String,
75
+ toLabel: Schema.String
76
+ });
77
+ // ---------------------------------------------------------------------------
78
+ // Main schema
79
+ // ---------------------------------------------------------------------------
80
+ export const WeeklyStats = Schema.Struct({
81
+ week: Schema.String,
82
+ weekStart: Schema.String,
83
+ weekEnd: Schema.String,
84
+ dataAvailableSince: Schema.NullOr(Schema.String),
85
+ prsCreated: Schema.Number,
86
+ prsMerged: Schema.Number,
87
+ prsClosed: Schema.Number,
88
+ totalComments: Schema.Number,
89
+ topContributors: Schema.Array(Contributor),
90
+ topReviewers: Schema.Array(Reviewer),
91
+ topApprovers: Schema.Array(Approver),
92
+ medianTimeToMerge: Schema.NullOr(Schema.Number),
93
+ medianTimeToFirstReview: Schema.NullOr(Schema.Number),
94
+ medianTimeToAddressFeedback: Schema.NullOr(Schema.Number),
95
+ mergeTimeDetails: Schema.Array(LifecycleDetail),
96
+ firstReviewDetails: Schema.Array(LifecycleDetail),
97
+ feedbackDetails: Schema.Array(LifecycleDetail),
98
+ mostActivePRs: Schema.Array(ActivePR),
99
+ prSizeDistribution: SizeDistribution,
100
+ avgDiffSize: Schema.NullOr(DiffSize),
101
+ diffSizeByContributor: Schema.Array(DiffByContributor),
102
+ stalePRs: Schema.Array(StalePR),
103
+ reviewCoverage: Schema.NullOr(Schema.Number),
104
+ approvalRate: Schema.NullOr(Schema.Number),
105
+ busFactor: Schema.NullOr(BusFactor),
106
+ availableRepos: Schema.Array(Schema.String),
107
+ availableAuthors: Schema.Array(Schema.String),
108
+ availableAccounts: Schema.Array(Schema.String)
109
+ });
110
+ //# sourceMappingURL=WeeklyStats.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WeeklyStats.js","sourceRoot":"","sources":["../../src/StatsService/WeeklyStats.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * @module StatsService
3
+ *
4
+ * Mental model: this is an **orchestration layer** — it doesn't own data,
5
+ * it assembles a `WeeklyStats` view-model by fanning out to StatsRepo
6
+ * queries and reviewer analysis in parallel, then shaping the results for
7
+ * the client.
8
+ *
9
+ * - All repo queries run with `{ concurrency: "unbounded" }` for max throughput.
10
+ * - `getWeeklyStats` is a read path; `syncWeek` is a write path that back-fills
11
+ * historical PR data into the cache.
12
+ * - A `catchAll` fallback returns an empty `WeeklyStats` so the UI always gets
13
+ * a valid response, even when the cache is cold.
14
+ *
15
+ * @category Service
16
+ */
17
+ import { Effect, type SubscriptionRef } from "effect";
18
+ import { AwsClient } from "../AwsClient/index.js";
19
+ import { PullRequestRepo } from "../CacheService/repos/PullRequestRepo/index.js";
20
+ import { StatsRepo } from "../CacheService/repos/StatsRepo/index.js";
21
+ import { ConfigService } from "../ConfigService/index.js";
22
+ import type { AppState } from "../Domain.js";
23
+ import type { WeeklyStats as _WeeklyStats } from "./WeeklyStats.js";
24
+ export { WeeklyStats } from "./WeeklyStats.js";
25
+ type WeeklyStats = _WeeklyStats;
26
+ declare const StatsService_base: Effect.Service.Class<StatsService, "@knpkv/codecommit-core/StatsService", {
27
+ readonly effect: Effect.Effect<{
28
+ readonly getWeeklyStats: (week: string, filters: StatsRepo.Filters) => Effect.Effect<WeeklyStats>;
29
+ readonly syncWeek: (week: string, state: SubscriptionRef.SubscriptionRef<AppState>) => Effect.Effect<void>;
30
+ readonly currentWeek: () => string;
31
+ }, never, AwsClient | PullRequestRepo | StatsRepo | ConfigService>;
32
+ }>;
33
+ export declare class StatsService extends StatsService_base {
34
+ }
35
+ export declare namespace StatsService {
36
+ /**
37
+ * @category models
38
+ */
39
+ interface Service {
40
+ readonly getWeeklyStats: (week: string, filters: StatsRepo.Filters) => Effect.Effect<WeeklyStats>;
41
+ readonly syncWeek: (week: string, state: SubscriptionRef.SubscriptionRef<AppState>) => Effect.Effect<void>;
42
+ readonly currentWeek: () => string;
43
+ }
44
+ }
45
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/StatsService/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAQ,MAAM,EAAiB,KAAK,eAAe,EAAE,MAAM,QAAQ,CAAA;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAA;AAChF,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAA;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAEzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAE5C,OAAO,KAAK,EAAE,WAAW,IAAI,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAEnE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,KAAK,WAAW,GAAG,YAAY,CAAA;;;wCA8GF,MAAM,WAAW,SAAS,CAAC,OAAO,KAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;kCAuCrE,MAAM,SAAS,eAAe,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;;;;AA3IrG,qBAAa,YAAa,SAAQ,iBAiJhC;CAAG;AAEL,MAAM,CAAC,OAAO,WAAW,YAAY,CAAC;IACpC;;OAEG;IACH,UAAiB,OAAO;QACtB,QAAQ,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,KAAK,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QACjG,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAC1G,QAAQ,CAAC,WAAW,EAAE,MAAM,MAAM,CAAA;KACnC;CACF"}