Conversation
Greptile SummaryThis PR extracts the shared spatial primitive types
Confidence Score: 5/5Safe to merge — this is a pure type-level refactor with no functional changes to runtime logic. All three changed files produce structurally identical TypeScript shapes to their pre-PR versions; the only change is where the top/height/bodyHeight/hunkAnchorRows/hunkBounds properties are declared. No logic, caching, or measurement code was altered. The single P2 comment flags a pre-existing duplicate helper that could be consolidated but does not block merging. No files require special attention. Important Files Changed
Class Diagram%%{init: {'theme': 'neutral'}}%%
classDiagram
class VerticalBounds {
+number top
+number height
}
class SectionGeometry~THunkBounds~ {
+number bodyHeight
+Map~number,number~ hunkAnchorRows
+Map~number,THunkBounds~ hunkBounds
}
class PlannedHunkBounds {
+string startRowId
+string endRowId
}
class PlannedSectionGeometry
class DiffSectionRowBounds {
+string key
}
class DiffSectionGeometry {
+DiffSectionRowBounds[] rowBounds
+Map~string,DiffSectionRowBounds~ rowBoundsByKey
}
VerticalBounds <|-- PlannedHunkBounds : extends
VerticalBounds <|-- DiffSectionRowBounds : extends
SectionGeometry <|.. PlannedSectionGeometry : alias (THunkBounds=PlannedHunkBounds)
SectionGeometry <|-- DiffSectionGeometry : extends (THunkBounds=PlannedHunkBounds)
|
Summary
VerticalBoundsandSectionGeometrytypes intosrc/ui/lib/diffSpatial.tsTesting
This PR description was generated by Pi using OpenAI o3