@mergesignal/shared 0.4.3 → 0.5.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 (171) hide show
  1. package/dist/actionsStepSummary.d.ts +1 -22
  2. package/dist/actionsStepSummary.d.ts.map +1 -1
  3. package/dist/actionsStepSummary.js +19 -716
  4. package/dist/actionsStepSummary.test.js +34 -329
  5. package/dist/assessmentLabels.d.ts +6 -0
  6. package/dist/assessmentLabels.d.ts.map +1 -0
  7. package/dist/assessmentLabels.js +33 -0
  8. package/dist/assessmentProjection.d.ts +12 -0
  9. package/dist/assessmentProjection.d.ts.map +1 -0
  10. package/dist/assessmentProjection.js +100 -0
  11. package/dist/assessmentSchema.d.ts +155 -0
  12. package/dist/assessmentSchema.d.ts.map +1 -0
  13. package/dist/assessmentSchema.js +110 -0
  14. package/dist/cardObservationCatalog.d.ts +2 -0
  15. package/dist/cardObservationCatalog.d.ts.map +1 -1
  16. package/dist/cardObservationCatalog.js +47 -1
  17. package/dist/engineWireRegression.test.js +22 -2
  18. package/dist/fixtures/assessmentFixtures.d.ts +13 -0
  19. package/dist/fixtures/assessmentFixtures.d.ts.map +1 -0
  20. package/dist/fixtures/assessmentFixtures.js +164 -0
  21. package/dist/formatCardExposureDisplay.d.ts +0 -4
  22. package/dist/formatCardExposureDisplay.d.ts.map +1 -1
  23. package/dist/formatCardExposureDisplay.js +0 -15
  24. package/dist/formatInsight.d.ts +3 -2
  25. package/dist/formatInsight.d.ts.map +1 -1
  26. package/dist/formatInsight.js +26 -1
  27. package/dist/index.d.ts +7 -11
  28. package/dist/index.d.ts.map +1 -1
  29. package/dist/index.js +7 -11
  30. package/dist/narrativeParity.test.js +4 -34
  31. package/dist/presentGitHubPrComment.d.ts +1 -3
  32. package/dist/presentGitHubPrComment.d.ts.map +1 -1
  33. package/dist/presentGitHubPrComment.js +0 -17
  34. package/dist/presentation/compose/narrativeChannels.d.ts.map +1 -1
  35. package/dist/presentation/compose/narrativeChannels.js +13 -43
  36. package/dist/presentation/compose/narrativeCompose.d.ts.map +1 -1
  37. package/dist/presentation/compose/narrativeCompose.js +2 -5
  38. package/dist/presentation/dto/assessmentPresentationFields.d.ts +13 -0
  39. package/dist/presentation/dto/assessmentPresentationFields.d.ts.map +1 -0
  40. package/dist/presentation/dto/assessmentPresentationFields.js +1 -0
  41. package/dist/presentation/dto/dashboardCardPresentation.d.ts +2 -1
  42. package/dist/presentation/dto/dashboardCardPresentation.d.ts.map +1 -1
  43. package/dist/presentation/dto/githubAndCliPresentation.d.ts +4 -3
  44. package/dist/presentation/dto/githubAndCliPresentation.d.ts.map +1 -1
  45. package/dist/presentation/dto/scanDetailsPresentation.d.ts +2 -1
  46. package/dist/presentation/dto/scanDetailsPresentation.d.ts.map +1 -1
  47. package/dist/presentation/fixtures/dashboardCardGolden.test.js +21 -14
  48. package/dist/presentation/fixtures/presentationPersonaFixtures.d.ts.map +1 -1
  49. package/dist/presentation/fixtures/presentationPersonaFixtures.js +31 -24
  50. package/dist/presentation/fixtures/scanResultFixtures.d.ts.map +1 -1
  51. package/dist/presentation/fixtures/scanResultFixtures.js +14 -3
  52. package/dist/presentation/index.d.ts +0 -1
  53. package/dist/presentation/index.d.ts.map +1 -1
  54. package/dist/presentation/index.js +0 -1
  55. package/dist/presentation/orchestration/buildScanCardPresentation.d.ts.map +1 -1
  56. package/dist/presentation/orchestration/buildScanCardPresentation.js +8 -3
  57. package/dist/presentation/orchestration/buildScanPresentationBundle.d.ts +1 -1
  58. package/dist/presentation/orchestration/buildScanPresentationBundle.d.ts.map +1 -1
  59. package/dist/presentation/orchestration/buildScanPresentationBundle.js +12 -10
  60. package/dist/presentation/orchestration/scanPresentationBundle.d.ts +8 -3
  61. package/dist/presentation/orchestration/scanPresentationBundle.d.ts.map +1 -1
  62. package/dist/presentation/presentationPersonas.test.js +6 -6
  63. package/dist/presentation/presenters/presentCliScanSummary.d.ts.map +1 -1
  64. package/dist/presentation/presenters/presentCliScanSummary.js +2 -0
  65. package/dist/presentation/presenters/presentDashboardCard.d.ts.map +1 -1
  66. package/dist/presentation/presenters/presentDashboardCard.js +2 -0
  67. package/dist/presentation/presenters/presentGitHubCheckRun.d.ts.map +1 -1
  68. package/dist/presentation/presenters/presentGitHubCheckRun.js +2 -0
  69. package/dist/presentation/presenters/presentGitHubPrComment.d.ts.map +1 -1
  70. package/dist/presentation/presenters/presentGitHubPrComment.js +15 -21
  71. package/dist/presentation/presenters/presentScanDetails.d.ts.map +1 -1
  72. package/dist/presentation/presenters/presentScanDetails.js +52 -129
  73. package/dist/presentation/profile/buildProfileFromAssessment.d.ts +5 -0
  74. package/dist/presentation/profile/buildProfileFromAssessment.d.ts.map +1 -0
  75. package/dist/presentation/profile/buildProfileFromAssessment.js +58 -0
  76. package/dist/presentation/projectAssessmentFields.d.ts +4 -0
  77. package/dist/presentation/projectAssessmentFields.d.ts.map +1 -0
  78. package/dist/presentation/projectAssessmentFields.js +13 -0
  79. package/dist/presentation/surfaceParity.test.d.ts +2 -0
  80. package/dist/presentation/surfaceParity.test.d.ts.map +1 -0
  81. package/dist/presentation/surfaceParity.test.js +74 -0
  82. package/dist/productMessaging.d.ts +4 -4
  83. package/dist/productMessaging.d.ts.map +1 -1
  84. package/dist/productMessaging.js +4 -4
  85. package/dist/productMessaging.test.js +2 -2
  86. package/dist/repoIntelligenceSchema.d.ts +2 -2
  87. package/dist/resolvePipelineStatus.d.ts +15 -0
  88. package/dist/resolvePipelineStatus.d.ts.map +1 -0
  89. package/dist/resolvePipelineStatus.js +37 -0
  90. package/dist/scanCardPresentationState.d.ts +4 -0
  91. package/dist/scanCardPresentationState.d.ts.map +1 -0
  92. package/dist/scanCardPresentationState.js +4 -0
  93. package/dist/{scanDetailViewModel.d.ts → scanDetailViewModelTypes.d.ts} +60 -32
  94. package/dist/scanDetailViewModelTypes.d.ts.map +1 -0
  95. package/dist/scanDetailViewModelTypes.js +4 -0
  96. package/dist/scanResultSchema.d.ts +75 -2
  97. package/dist/scanResultSchema.d.ts.map +1 -1
  98. package/dist/scanResultSchema.js +4 -2
  99. package/dist/scanResultSchema.test.js +16 -0
  100. package/dist/trustedScanGuards.test.js +7 -0
  101. package/dist/types.d.ts +3 -0
  102. package/dist/types.d.ts.map +1 -1
  103. package/package.json +1 -1
  104. package/dist/collectNarrativeWhyBullets.d.ts +0 -12
  105. package/dist/collectNarrativeWhyBullets.d.ts.map +0 -1
  106. package/dist/collectNarrativeWhyBullets.js +0 -104
  107. package/dist/deriveCardDisplaySummary.d.ts +0 -16
  108. package/dist/deriveCardDisplaySummary.d.ts.map +0 -1
  109. package/dist/deriveCardDisplaySummary.js +0 -56
  110. package/dist/deriveCardDisplaySummary.test.d.ts +0 -2
  111. package/dist/deriveCardDisplaySummary.test.d.ts.map +0 -1
  112. package/dist/deriveCardDisplaySummary.test.js +0 -89
  113. package/dist/deriveCardOperationalObservations.d.ts +0 -19
  114. package/dist/deriveCardOperationalObservations.d.ts.map +0 -1
  115. package/dist/deriveCardOperationalObservations.js +0 -180
  116. package/dist/deriveCardOperationalObservations.test.d.ts +0 -2
  117. package/dist/deriveCardOperationalObservations.test.d.ts.map +0 -1
  118. package/dist/deriveCardOperationalObservations.test.js +0 -268
  119. package/dist/deriveRiskScoreSummary.d.ts +0 -33
  120. package/dist/deriveRiskScoreSummary.d.ts.map +0 -1
  121. package/dist/deriveRiskScoreSummary.js +0 -90
  122. package/dist/deriveRiskScoreSummary.test.d.ts +0 -2
  123. package/dist/deriveRiskScoreSummary.test.d.ts.map +0 -1
  124. package/dist/deriveRiskScoreSummary.test.js +0 -47
  125. package/dist/deriveScanDetailRecommendations.d.ts +0 -63
  126. package/dist/deriveScanDetailRecommendations.d.ts.map +0 -1
  127. package/dist/deriveScanDetailRecommendations.js +0 -725
  128. package/dist/deriveScanDetailRecommendations.test.d.ts +0 -2
  129. package/dist/deriveScanDetailRecommendations.test.d.ts.map +0 -1
  130. package/dist/deriveScanDetailRecommendations.test.js +0 -181
  131. package/dist/deriveScanSummaryText.d.ts +0 -7
  132. package/dist/deriveScanSummaryText.d.ts.map +0 -1
  133. package/dist/deriveScanSummaryText.js +0 -24
  134. package/dist/deriveScanSummaryText.test.d.ts +0 -2
  135. package/dist/deriveScanSummaryText.test.d.ts.map +0 -1
  136. package/dist/deriveScanSummaryText.test.js +0 -77
  137. package/dist/formatCardEvidenceCounts.d.ts +0 -7
  138. package/dist/formatCardEvidenceCounts.d.ts.map +0 -1
  139. package/dist/formatCardEvidenceCounts.js +0 -19
  140. package/dist/prCheckRunPresentation.d.ts +0 -68
  141. package/dist/prCheckRunPresentation.d.ts.map +0 -1
  142. package/dist/prCheckRunPresentation.js +0 -319
  143. package/dist/prCheckRunPresentation.test.d.ts +0 -2
  144. package/dist/prCheckRunPresentation.test.d.ts.map +0 -1
  145. package/dist/prCheckRunPresentation.test.js +0 -278
  146. package/dist/presentation/intent/derivePresentationInterpretation.d.ts +0 -4
  147. package/dist/presentation/intent/derivePresentationInterpretation.d.ts.map +0 -1
  148. package/dist/presentation/intent/derivePresentationInterpretation.js +0 -202
  149. package/dist/presentation/intent/formatPresentationCopy.d.ts +0 -8
  150. package/dist/presentation/intent/formatPresentationCopy.d.ts.map +0 -1
  151. package/dist/presentation/intent/formatPresentationCopy.js +0 -140
  152. package/dist/presentation/intent/presentationIntent.test.d.ts +0 -2
  153. package/dist/presentation/intent/presentationIntent.test.d.ts.map +0 -1
  154. package/dist/presentation/intent/presentationIntent.test.js +0 -29
  155. package/dist/presentation/intent/verificationFocusLabels.d.ts +0 -2
  156. package/dist/presentation/intent/verificationFocusLabels.d.ts.map +0 -1
  157. package/dist/presentation/intent/verificationFocusLabels.js +0 -45
  158. package/dist/presentation/profile/derivePresentationProfile.d.ts +0 -12
  159. package/dist/presentation/profile/derivePresentationProfile.d.ts.map +0 -1
  160. package/dist/presentation/profile/derivePresentationProfile.js +0 -85
  161. package/dist/scanCardSummary.d.ts +0 -58
  162. package/dist/scanCardSummary.d.ts.map +0 -1
  163. package/dist/scanCardSummary.js +0 -146
  164. package/dist/scanCardSummary.test.d.ts +0 -2
  165. package/dist/scanCardSummary.test.d.ts.map +0 -1
  166. package/dist/scanCardSummary.test.js +0 -234
  167. package/dist/scanDetailViewModel.d.ts.map +0 -1
  168. package/dist/scanDetailViewModel.js +0 -636
  169. package/dist/scanDetailViewModel.test.d.ts +0 -2
  170. package/dist/scanDetailViewModel.test.d.ts.map +0 -1
  171. package/dist/scanDetailViewModel.test.js +0 -530
package/dist/types.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import type { Assessment } from "./assessmentSchema.js";
1
2
  export type LayerScores = {
2
3
  security: number;
3
4
  maintainability: number;
@@ -254,6 +255,8 @@ export type ScanResult = {
254
255
  layerScores: LayerScores;
255
256
  findings: Finding[];
256
257
  methodologyVersion?: string;
258
+ /** Assessment Contract — sole authority for posture and presentation intensity. */
259
+ assessment?: Assessment;
257
260
  confidence?: RiskConfidence;
258
261
  signals?: RiskSignal[];
259
262
  contributions?: ScoreContribution[];
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;AAErE;;GAEG;AACH,MAAM,MAAM,eAAe,GACvB,iBAAiB,GACjB,gBAAgB,GAChB,wBAAwB,GACxB,oBAAoB,GACpB,oBAAoB,GACpB,kBAAkB,GAClB,iBAAiB,GACjB,aAAa,GACb,eAAe,GACf,SAAS,CAAC;AAEd,iFAAiF;AACjF,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,0EAA0E;IAC1E,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,eAAe,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,sFAAsF;IACtF,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;AAEtD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,eAAe,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,4EAA4E;AAC5E,MAAM,MAAM,iBAAiB,GAAG;IAC9B,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAClC,uBAAuB,GACvB,sBAAsB,GACtB,qBAAqB,GACrB,uBAAuB,GACvB,oBAAoB,GACpB,mBAAmB,GACnB,yBAAyB,GACzB,oBAAoB,GACpB,uBAAuB,GACvB,mBAAmB,GACnB,oCAAoC,CAAC;AAEzC,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,0BAA0B,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE9E,MAAM,MAAM,0BAA0B,GAAG;IACvC,MAAM,EAAE,gCAAgC,CAAC;IACzC,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,4FAA4F;AAC5F,MAAM,MAAM,mBAAmB,GAAG;IAChC,yBAAyB,EAAE,OAAO,CAAC;IACnC,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,0BAA0B,CAAC,EAAE,0BAA0B,CAAC;CACzD,CAAC;AAEF,2EAA2E;AAC3E,MAAM,MAAM,wBAAwB,GAAG;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,oDAAoD;IACpD,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,mEAAmE;IACnE,MAAM,CAAC,EAAE,wBAAwB,CAAC;IAClC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,qEAAqE;IACrE,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC;AAE3C,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEvD,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,UAAU,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,UAAU,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,KAAK,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,OAAO,CAAC;IACpB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,aAAa,CAAC,EAAE,wBAAwB,EAAE,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,aAAa,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAClC,QAAQ,GACR,YAAY,GACZ,MAAM,GACN,SAAS,CAAC;AAEd,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,0BAA0B,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACnC,QAAQ,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACpC,UAAU,CAAC,EAAE,sBAAsB,EAAE,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,aAAa,GACrB,mBAAmB,GACnB,YAAY,GACZ,iBAAiB,GACjB,iBAAiB,GACjB,kBAAkB,CAAC;AAEvB,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,CAAC;AAE/D,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG,QAAQ,GAAG,aAAa,CAAC;AACvE,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,KAAK,CAAC;AAE7C,iGAAiG;AACjG,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AAE9D,sFAAsF;AACtF,MAAM,MAAM,uBAAuB,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEhE;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;AAEzD,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,UAAU,EAAE,iBAAiB,CAAC;IAC9B,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC;;OAEG;IACH,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,kBAAkB,CAAC,EAAE,uBAAuB,CAAC;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,8EAA8E;AAC9E,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG;IAC1C,aAAa,EAAE,oBAAoB,CAAC;IACpC,kBAAkB,EAAE,uBAAuB,CAAC;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,4CAIhC,CAAC;AAEX,MAAM,MAAM,wBAAwB,GAClC,CAAC,OAAO,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjD,MAAM,MAAM,oBAAoB,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE7D,MAAM,MAAM,UAAU,GAAG;IACvB,cAAc,EAAE,wBAAwB,CAAC;IACzC,UAAU,EAAE,oBAAoB,CAAC;IACjC,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB,CAAC;AAEF,iGAAiG;AACjG,MAAM,MAAM,sBAAsB,GAC9B,gBAAgB,GAChB,+BAA+B,CAAC;AAEpC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,sBAAsB,CAAC;CAC9B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,wBAAwB,EAAE;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACjD,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;QAC5B,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,OAAO,CAAC;QACvB,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;KACtC,CAAC;IACF,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,aAAa,EAAE,SAAS;QACtB,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,OAAO,CAAC;QACrB,QAAQ,EAAE,iBAAiB,CAAC;QAC5B,IAAI,EAAE,aAAa,CAAC;KACrB,EAAE,CAAC;IACJ,aAAa,EAAE,SAAS;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC7C,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACzD,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mFAAmF;IACnF,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IACvB,aAAa,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACpC,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC;IACnC,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,aAAa,CAAC,EAAE,uBAAuB,CAAC;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAC;IACvB,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,+FAA+F;IAC/F,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC;;OAEG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,0GAA0G;IAC1G,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,wEAAwE;IACxE,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC3C,CAAC;AAEF,yGAAyG;AACzG,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,UAAU,EACV,oBAAoB,GAAG,aAAa,CACrC,CAAC;AAEF,kFAAkF;AAClF,MAAM,MAAM,uBAAuB,GAAG,UAAU,GAC9C,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC;AAEnD,MAAM,MAAM,aAAa,GAAG;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,iBAAiB,CAAC;IACnC,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IACrC,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;IACvD,eAAe,CAAC,EAAE,KAAK,CAAC;QACtB,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,UAAU,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,CAAC,CAAC;IACH,eAAe,CAAC,EAAE;QAChB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,EAAE,MAAM,CAAC;QACxB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;QAC1B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;QAC5B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;KAC7B,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,sBAAsB,CAAC;IAC/B,MAAM,CAAC,EAAE,uBAAuB,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;AAErE,MAAM,MAAM,sBAAsB,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE/D,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,oBAAoB,CAAC;IAC7B,QAAQ,EAAE,sBAAsB,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GACzB,sBAAsB,GACtB,wBAAwB,GACxB,wBAAwB,GACxB,qBAAqB,GACrB,cAAc,CAAC;AAEnB,MAAM,MAAM,qBAAqB,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE9D,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,iBAAiB,CAAC;IACxB,QAAQ,EAAE,qBAAqB,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,wBAAwB,CAAC;IACnC,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC,WAAW,EAAE,WAAW,EAAE,CAAC;IAC3B,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,wEAAwE;AACxE,eAAO,MAAM,eAAe,EAAG,YAAqB,CAAC;AAErD,MAAM,MAAM,sBAAsB,GAAG;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,wCAAwC;AACxC,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,CAAC,EAAE,sBAAsB,CAAC;CACjC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mergesignal/shared",
3
- "version": "0.4.3",
3
+ "version": "0.5.0",
4
4
  "description": "MergeSignal shared scan contract, presentation policy, and trusted validation",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,12 +0,0 @@
1
- import type { ScanNarrativeFacts } from "./scanNarrativeFacts.js";
2
- import type { ScanResult } from "./types.js";
3
- /**
4
- * Why bullets from narrative facts (tier-1/tier-2). Preferred for GitHub + Actions.
5
- */
6
- export declare function collectWhyBulletsFromFacts(facts: ScanNarrativeFacts, max: number): string[];
7
- /**
8
- * Legacy why bullets from raw ScanResult (fallback when facts are thin).
9
- */
10
- export declare function collectWhyBulletsFromResult(result: ScanResult, max: number): string[];
11
- export declare function collectWhyBullets(facts: ScanNarrativeFacts, result: ScanResult, max: number): string[];
12
- //# sourceMappingURL=collectNarrativeWhyBullets.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"collectNarrativeWhyBullets.d.ts","sourceRoot":"","sources":["../src/collectNarrativeWhyBullets.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAS7C;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,kBAAkB,EACzB,GAAG,EAAE,MAAM,GACV,MAAM,EAAE,CAsCV;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,MAAM,GACV,MAAM,EAAE,CAwBV;AAED,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,kBAAkB,EACzB,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,MAAM,GACV,MAAM,EAAE,CAiBV"}
@@ -1,104 +0,0 @@
1
- import { deriveScanSummaryText } from "./deriveScanSummaryText.js";
2
- import { humanizeEngineSurfaceText, truncateWithEllipsis, } from "./actionsStepSummary.js";
3
- import { composeContextLineFromFacts, formatBlastRadiusDetailLine, formatUsageSummaryLine, labelReachabilityKind, selectReviewerGuidance, } from "./narrativePresentation.js";
4
- import { normalizeGeneratedText } from "./normalizeGeneratedText.js";
5
- function pushUnique(out, line, max) {
6
- const t = normalizeGeneratedText(line.trim());
7
- if (!t || out.includes(t))
8
- return;
9
- out.push(t);
10
- if (out.length > max)
11
- out.length = max;
12
- }
13
- /**
14
- * Why bullets from narrative facts (tier-1/tier-2). Preferred for GitHub + Actions.
15
- */
16
- export function collectWhyBulletsFromFacts(facts, max) {
17
- const prIntel = facts.availability.mode === "pr_intelligence" ||
18
- facts.availability.tiersPresent.tier1;
19
- if (!prIntel)
20
- return [];
21
- const out = [];
22
- if (prIntel) {
23
- const context = composeContextLineFromFacts(facts, {
24
- includePathSample: true,
25
- maxAreas: 2,
26
- });
27
- if (context)
28
- pushUnique(out, context, max);
29
- const usage = formatUsageSummaryLine(facts, 1);
30
- if (usage)
31
- pushUnique(out, usage, max);
32
- const blast = formatBlastRadiusDetailLine(facts, 2);
33
- if (blast)
34
- pushUnique(out, blast, max);
35
- for (const area of facts.affectedAreas) {
36
- if (out.length >= max)
37
- break;
38
- pushUnique(out, area.label, max);
39
- }
40
- const reach = labelReachabilityKind(facts);
41
- if (reach)
42
- pushUnique(out, reach, max);
43
- }
44
- if (out.length < max) {
45
- for (const g of selectReviewerGuidance(facts, { max: max - out.length })) {
46
- if (out.length >= max)
47
- break;
48
- pushUnique(out, truncateWithEllipsis(g.message.trim(), 200), max);
49
- }
50
- }
51
- return out.slice(0, max);
52
- }
53
- /**
54
- * Legacy why bullets from raw ScanResult (fallback when facts are thin).
55
- */
56
- export function collectWhyBulletsFromResult(result, max) {
57
- const out = [];
58
- const reasoning = result.decision?.reasoning;
59
- if (Array.isArray(reasoning)) {
60
- for (const r of reasoning) {
61
- const s = humanizeEngineSurfaceText(String(r).trim());
62
- if (s)
63
- pushUnique(out, s, max);
64
- if (out.length >= max)
65
- return out.slice(0, max);
66
- }
67
- }
68
- const reasons = result.explain?.reasons;
69
- if (Array.isArray(reasons) && out.length < max) {
70
- for (const r of reasons) {
71
- const title = String(r?.title ?? r?.id ?? "").trim();
72
- const readable = humanizeEngineSurfaceText(title);
73
- if (readable)
74
- pushUnique(out, readable, max);
75
- if (out.length >= max)
76
- break;
77
- }
78
- }
79
- if (out.length === 0) {
80
- const one = deriveScanSummaryText(result);
81
- if (one)
82
- pushUnique(out, one, max);
83
- }
84
- return out.slice(0, max);
85
- }
86
- export function collectWhyBullets(facts, result, max) {
87
- const fromFacts = collectWhyBulletsFromFacts(facts, max);
88
- if (fromFacts.length >= max)
89
- return fromFacts;
90
- if (facts.availability.mode === "pr_intelligence" ||
91
- facts.availability.tiersPresent.tier1) {
92
- return fromFacts;
93
- }
94
- const legacy = collectWhyBulletsFromResult(result, max);
95
- if (fromFacts.length === 0)
96
- return legacy;
97
- const merged = [...fromFacts];
98
- for (const line of legacy) {
99
- pushUnique(merged, line, max);
100
- if (merged.length >= max)
101
- break;
102
- }
103
- return merged.slice(0, max);
104
- }
@@ -1,16 +0,0 @@
1
- import type { FindingCountSummary } from "./scanCardSummary.js";
2
- import type { MergePosture } from "./riskVocabulary.js";
3
- /** True when summary text is too generic for dashboard cards. */
4
- export declare function isGenericCardSummary(text: string | null | undefined): boolean;
5
- export type DeriveCardDisplaySummaryInput = {
6
- mergePosture: MergePosture | null;
7
- rawSummary: string | null | undefined;
8
- findingCounts: FindingCountSummary | null;
9
- topAffectedAreas: string[];
10
- };
11
- /**
12
- * Dashboard card summary line — operational, concise, posture-aware.
13
- * Returns null for quiet safe cards (posture-only display).
14
- */
15
- export declare function deriveCardDisplaySummary(input: DeriveCardDisplaySummaryInput): string | null;
16
- //# sourceMappingURL=deriveCardDisplaySummary.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deriveCardDisplaySummary.d.ts","sourceRoot":"","sources":["../src/deriveCardDisplaySummary.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAexD,iEAAiE;AACjE,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAO7E;AAED,MAAM,MAAM,6BAA6B,GAAG;IAC1C,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACtC,aAAa,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAC1C,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,6BAA6B,GACnC,MAAM,GAAG,IAAI,CA+Bf"}
@@ -1,56 +0,0 @@
1
- import { GENERIC_CARD_SUMMARY_PHRASES, LEGACY_SAFE_SUMMARY, SAFE_LOW_FINDINGS_SUMMARY, } from "./cardSummaryCopy.js";
2
- import { joinCardAreaLabels } from "./formatCardAreaLabels.js";
3
- import { truncateCardSummary } from "./truncateCardSummary.js";
4
- function hasActionableFindings(counts) {
5
- return counts.critical + counts.high + counts.medium + counts.low > 0;
6
- }
7
- function hasOnlyLowFindings(counts) {
8
- return (counts.low > 0 &&
9
- counts.critical === 0 &&
10
- counts.high === 0 &&
11
- counts.medium === 0);
12
- }
13
- /** True when summary text is too generic for dashboard cards. */
14
- export function isGenericCardSummary(text) {
15
- if (!text?.trim())
16
- return true;
17
- const normalized = text.trim().toLowerCase();
18
- if (normalized.length < 12)
19
- return true;
20
- return GENERIC_CARD_SUMMARY_PHRASES.some((phrase) => normalized.includes(phrase));
21
- }
22
- /**
23
- * Dashboard card summary line — operational, concise, posture-aware.
24
- * Returns null for quiet safe cards (posture-only display).
25
- */
26
- export function deriveCardDisplaySummary(input) {
27
- const { mergePosture, rawSummary, findingCounts, topAffectedAreas } = input;
28
- if (!mergePosture)
29
- return rawSummary?.trim() || null;
30
- const counts = findingCounts ?? {
31
- critical: 0,
32
- high: 0,
33
- medium: 0,
34
- low: 0,
35
- };
36
- if (mergePosture === "safe") {
37
- if (!hasActionableFindings(counts)) {
38
- const areasLine = joinCardAreaLabels(topAffectedAreas);
39
- if (areasLine)
40
- return truncateCardSummary(areasLine, 90);
41
- return null;
42
- }
43
- if (hasOnlyLowFindings(counts))
44
- return SAFE_LOW_FINDINGS_SUMMARY;
45
- }
46
- const raw = rawSummary?.trim() ?? null;
47
- if (raw && raw !== LEGACY_SAFE_SUMMARY && !isGenericCardSummary(raw)) {
48
- return truncateCardSummary(raw);
49
- }
50
- const areasLine = joinCardAreaLabels(topAffectedAreas);
51
- if (areasLine)
52
- return truncateCardSummary(areasLine, 90);
53
- if (mergePosture === "safe")
54
- return null;
55
- return null;
56
- }
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=deriveCardDisplaySummary.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deriveCardDisplaySummary.test.d.ts","sourceRoot":"","sources":["../src/deriveCardDisplaySummary.test.ts"],"names":[],"mappings":""}
@@ -1,89 +0,0 @@
1
- import { describe, it, expect } from "vitest";
2
- import { deriveCardDisplaySummary, isGenericCardSummary, } from "./deriveCardDisplaySummary.js";
3
- import { truncateCardSummary } from "./truncateCardSummary.js";
4
- import { formatCardAreaLabels, joinCardAreaLabels, } from "./formatCardAreaLabels.js";
5
- import { formatCardEvidenceCounts } from "./formatCardEvidenceCounts.js";
6
- describe("isGenericCardSummary", () => {
7
- it("flags platform boilerplate", () => {
8
- expect(isGenericCardSummary("Potential runtime impact detected")).toBe(true);
9
- expect(isGenericCardSummary("No high-confidence merge risk from dependency change")).toBe(true);
10
- expect(isGenericCardSummary("No high-confidence merge risks from this PR dependency change")).toBe(true);
11
- });
12
- it("allows concrete operational copy", () => {
13
- expect(isGenericCardSummary("This upgrade changes websocket reconnect timing in the API layer")).toBe(false);
14
- });
15
- });
16
- describe("truncateCardSummary", () => {
17
- it("truncates at sentence boundary when possible", () => {
18
- const text = "First sentence is clear. Second sentence adds more detail that should be cut.";
19
- const out = truncateCardSummary(text, 50);
20
- expect(out).toBe("First sentence is clear.");
21
- });
22
- it("uses ellipsis at word boundary", () => {
23
- const text = "This upgrade changes retry behavior in payment polling handlers";
24
- const out = truncateCardSummary(text, 40);
25
- expect(out.endsWith("…")).toBe(true);
26
- expect(out.length).toBeLessThanOrEqual(43);
27
- });
28
- });
29
- describe("formatCardAreaLabels", () => {
30
- it("drops paths and generic taxonomy", () => {
31
- expect(formatCardAreaLabels([
32
- "packages/web/src/auth",
33
- "Auth flows",
34
- "Session refresh flow",
35
- ])).toEqual(["Session refresh flow"]);
36
- });
37
- it("prefers longer specific labels", () => {
38
- const out = formatCardAreaLabels(["API routes", "Payment retry handling"]);
39
- expect(out[0]).toBe("Payment retry handling");
40
- });
41
- });
42
- describe("deriveCardDisplaySummary", () => {
43
- const emptyCounts = { critical: 0, high: 0, medium: 0, low: 0 };
44
- it("returns null for quiet safe cards", () => {
45
- expect(deriveCardDisplaySummary({
46
- mergePosture: "safe",
47
- rawSummary: "No merge blockers detected",
48
- findingCounts: emptyCounts,
49
- topAffectedAreas: [],
50
- })).toBeNull();
51
- });
52
- it("surfaces affected areas on quiet safe cards when specific", () => {
53
- expect(deriveCardDisplaySummary({
54
- mergePosture: "safe",
55
- rawSummary: "No high-confidence merge risks",
56
- findingCounts: emptyCounts,
57
- topAffectedAreas: ["Session refresh flow"],
58
- })).toBe("Session refresh flow");
59
- });
60
- it("uses specific reasoning for risky", () => {
61
- expect(deriveCardDisplaySummary({
62
- mergePosture: "risky",
63
- rawSummary: "Auth boundary change in session middleware",
64
- findingCounts: { ...emptyCounts, high: 1 },
65
- topAffectedAreas: [],
66
- })).toBe("Auth boundary change in session middleware");
67
- });
68
- it("falls back to formatted areas when reasoning is generic", () => {
69
- expect(deriveCardDisplaySummary({
70
- mergePosture: "needs_review",
71
- rawSummary: "Potential runtime impact detected",
72
- findingCounts: emptyCounts,
73
- topAffectedAreas: ["Payment retry handling", "Auth flows"],
74
- })).toBe("Payment retry handling");
75
- });
76
- });
77
- describe("formatCardEvidenceCounts", () => {
78
- it("uses soft phrasing for risky critical", () => {
79
- expect(formatCardEvidenceCounts({ critical: 2, high: 0, medium: 0, low: 0 }, "risky")).toBe("Critical findings present");
80
- });
81
- it("returns null for safe", () => {
82
- expect(formatCardEvidenceCounts({ critical: 1, high: 1, medium: 0, low: 0 }, "safe")).toBeNull();
83
- });
84
- });
85
- describe("joinCardAreaLabels", () => {
86
- it("joins with middle dot", () => {
87
- expect(joinCardAreaLabels(["Session refresh flow", "Checkout handlers"])).toBe("Session refresh flow · Checkout handlers");
88
- });
89
- });
@@ -1,19 +0,0 @@
1
- import { type CatalogPhrase } from "./cardObservationCatalog.js";
2
- import type { MergePosture } from "./riskVocabulary.js";
3
- import type { ScanResult } from "./types.js";
4
- export type CardOperationalObservations = {
5
- operationalObservations: CatalogPhrase[];
6
- supportingLine: string | null;
7
- };
8
- export type DeriveCardOperationalObservationsOptions = {
9
- mergePosture: MergePosture | null;
10
- /** Primary path: full ScanResult JSON present. Never emit posture fallbacks. */
11
- hasFullResult?: boolean;
12
- max?: number;
13
- };
14
- /**
15
- * Derive 0–3 catalog-mapped operational observations for PR dashboard cards.
16
- * Primary path: silence when no mappable signals (G2).
17
- */
18
- export declare function deriveCardOperationalObservations(result: ScanResult | null | undefined, options: DeriveCardOperationalObservationsOptions): CardOperationalObservations;
19
- //# sourceMappingURL=deriveCardOperationalObservations.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deriveCardOperationalObservations.d.ts","sourceRoot":"","sources":["../src/deriveCardOperationalObservations.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,aAAa,EASnB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,MAAM,2BAA2B,GAAG;IACxC,uBAAuB,EAAE,aAAa,EAAE,CAAC;IACzC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,wCAAwC,GAAG;IACrD,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,gFAAgF;IAChF,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAiNF;;;GAGG;AACH,wBAAgB,iCAAiC,CAC/C,MAAM,EAAE,UAAU,GAAG,IAAI,GAAG,SAAS,EACrC,OAAO,EAAE,wCAAwC,GAChD,2BAA2B,CA4B7B"}
@@ -1,180 +0,0 @@
1
- import { sortRecommendationsForDisplay } from "./actionsStepSummary.js";
2
- import { mapContributionToCatalogPhrase, mapExplainReasonToCatalogPhrase, mapFindingToCatalogPhrase, mapGraphInsightsToCatalogPhrases, mapRecommendationToCatalogPhrase, mapTextToCatalogPhrase, } from "./cardObservationCatalog.js";
3
- import { formatCardAreaLabels } from "./formatCardAreaLabels.js";
4
- import { selectTopAffectedAreas } from "./selectTopAffectedAreas.js";
5
- const SOURCE_WEIGHT = {
6
- recommendation: 100,
7
- explain: 80,
8
- finding: 60,
9
- graph: 50,
10
- contribution: 45,
11
- summary: 20,
12
- area: 15,
13
- };
14
- let rankCounter = 0;
15
- function nextRank() {
16
- rankCounter += 1;
17
- return rankCounter;
18
- }
19
- function addCandidate(bucket, candidate) {
20
- bucket.push({ ...candidate, rank: nextRank() });
21
- }
22
- function collectCandidates(result) {
23
- const candidates = [];
24
- rankCounter = 0;
25
- const recs = sortRecommendationsForDisplay(Array.isArray(result.recommendations) ? result.recommendations : []);
26
- for (const rec of recs) {
27
- const mapped = mapRecommendationToCatalogPhrase(rec);
28
- if (mapped) {
29
- addCandidate(candidates, {
30
- ...mapped,
31
- weight: SOURCE_WEIGHT.recommendation,
32
- });
33
- }
34
- }
35
- if (Array.isArray(result.explain?.reasons)) {
36
- const sorted = [...result.explain.reasons]
37
- .filter((r) => r.title)
38
- .sort((a, b) => Math.abs(b.scoreImpact ?? 0) - Math.abs(a.scoreImpact ?? 0));
39
- for (const reason of sorted) {
40
- const mapped = mapExplainReasonToCatalogPhrase(reason);
41
- if (mapped) {
42
- addCandidate(candidates, {
43
- ...mapped,
44
- weight: SOURCE_WEIGHT.explain,
45
- });
46
- }
47
- }
48
- }
49
- if (Array.isArray(result.findings)) {
50
- const severityOrder = { critical: 4, high: 3, medium: 2, low: 1 };
51
- const sortedFindings = [...result.findings].sort((a, b) => (severityOrder[b.severity] ?? 0) - (severityOrder[a.severity] ?? 0));
52
- for (const finding of sortedFindings) {
53
- const mapped = mapFindingToCatalogPhrase(finding);
54
- if (mapped) {
55
- addCandidate(candidates, {
56
- ...mapped,
57
- weight: SOURCE_WEIGHT.finding,
58
- });
59
- }
60
- }
61
- }
62
- for (const mapped of mapGraphInsightsToCatalogPhrases(result.graphInsights)) {
63
- addCandidate(candidates, {
64
- ...mapped,
65
- weight: SOURCE_WEIGHT.graph,
66
- });
67
- }
68
- if (Array.isArray(result.contributions)) {
69
- for (const c of result.contributions) {
70
- const mapped = mapContributionToCatalogPhrase(c.id);
71
- if (mapped) {
72
- addCandidate(candidates, {
73
- ...mapped,
74
- weight: SOURCE_WEIGHT.contribution,
75
- });
76
- }
77
- }
78
- }
79
- const reasoning = result.decision?.reasoning;
80
- if (Array.isArray(reasoning)) {
81
- for (const line of reasoning) {
82
- const mapped = mapTextToCatalogPhrase(line);
83
- if (mapped) {
84
- addCandidate(candidates, {
85
- ...mapped,
86
- weight: SOURCE_WEIGHT.summary,
87
- });
88
- }
89
- }
90
- }
91
- if (Array.isArray(result.insights)) {
92
- for (const ins of result.insights) {
93
- const mapped = mapTextToCatalogPhrase(ins.message);
94
- if (mapped) {
95
- addCandidate(candidates, {
96
- ...mapped,
97
- weight: SOURCE_WEIGHT.summary,
98
- });
99
- }
100
- }
101
- }
102
- return candidates;
103
- }
104
- function selectObservations(candidates, max) {
105
- const byFamily = new Map();
106
- for (const c of candidates) {
107
- const existing = byFamily.get(c.family);
108
- if (!existing || c.weight > existing.weight) {
109
- byFamily.set(c.family, c);
110
- }
111
- else if (c.weight === existing.weight && c.rank < existing.rank) {
112
- byFamily.set(c.family, c);
113
- }
114
- }
115
- const distinct = [...byFamily.values()].sort((a, b) => {
116
- if (b.weight !== a.weight)
117
- return b.weight - a.weight;
118
- return a.rank - b.rank;
119
- });
120
- if (distinct.length === 0)
121
- return [];
122
- const topWeight = distinct[0].weight;
123
- const strongFamilies = distinct.filter((c) => c.weight >= topWeight - 15 || c.weight >= SOURCE_WEIGHT.finding);
124
- let take = distinct;
125
- if (strongFamilies.length <= 2 && distinct.length > 2) {
126
- take = distinct.slice(0, 2);
127
- }
128
- else if (distinct.length > max) {
129
- take = distinct.slice(0, max);
130
- }
131
- return take.map((c) => c.phrase);
132
- }
133
- function deriveSupportingLine(result, observations, candidates) {
134
- if (observations.length !== 1)
135
- return null;
136
- const usedPhrase = observations[0];
137
- const usedFamily = candidates.find((c) => c.phrase === usedPhrase)?.family;
138
- const secondCatalog = candidates.find((c) => c.phrase !== usedPhrase && c.family !== usedFamily);
139
- if (secondCatalog)
140
- return secondCatalog.phrase;
141
- const areas = formatCardAreaLabels(selectTopAffectedAreas(result, { max: 2 }));
142
- const area = areas[0];
143
- if (area && area.length <= 48 && !/\d/.test(area)) {
144
- return area;
145
- }
146
- return null;
147
- }
148
- function denormalizedFallback(mergePosture) {
149
- if (mergePosture === "safe") {
150
- return { operationalObservations: [], supportingLine: null };
151
- }
152
- if (mergePosture === "needs_review") {
153
- return { operationalObservations: [], supportingLine: null };
154
- }
155
- return { operationalObservations: [], supportingLine: null };
156
- }
157
- /**
158
- * Derive 0–3 catalog-mapped operational observations for PR dashboard cards.
159
- * Primary path: silence when no mappable signals (G2).
160
- */
161
- export function deriveCardOperationalObservations(result, options) {
162
- const max = options.max ?? 3;
163
- const hasFullResult = options.hasFullResult !== false;
164
- if (!result) {
165
- if (hasFullResult) {
166
- return { operationalObservations: [], supportingLine: null };
167
- }
168
- return denormalizedFallback(options.mergePosture);
169
- }
170
- const candidates = collectCandidates(result);
171
- const operationalObservations = selectObservations(candidates, max);
172
- if (operationalObservations.length === 0) {
173
- if (hasFullResult) {
174
- return { operationalObservations: [], supportingLine: null };
175
- }
176
- return denormalizedFallback(options.mergePosture);
177
- }
178
- const supportingLine = deriveSupportingLine(result, operationalObservations, candidates);
179
- return { operationalObservations, supportingLine };
180
- }
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=deriveCardOperationalObservations.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deriveCardOperationalObservations.test.d.ts","sourceRoot":"","sources":["../src/deriveCardOperationalObservations.test.ts"],"names":[],"mappings":""}