apps/mobile/src/features/review/ReviewSheet.tsx | 59 +++-- apps/mobile/src/features/review/nativeReviewDiffAdapter.test.ts | 23 ++ apps/mobile/src/features/review/nativeReviewDiffAdapter.ts | 32 ++- apps/mobile/src/features/review/reviewModel.test.ts | 61 +++++ apps/mobile/src/features/review/reviewModel.ts | 45 +++- apps/mobile/src/features/review/useReviewDiffData.ts | 232 +++++++++++++++++-- apps/mobile/src/features/review/useReviewSections.ts | 9 +- apps/server/src/vcs/GitVcsDriverCore.test.ts | 289 ++++++++++++++++++++++- apps/server/src/vcs/GitVcsDriverCore.ts | 399 ++++++++++++++------------------ apps/web/src/components/DiffPanel.tsx | 296 ++++++++++++++++------- apps/web/src/components/DiffPanelShell.tsx | 2 +- apps/web/src/components/diffs/AnnotatableCodeView.tsx | 14 ++ apps/web/src/components/diffs/DiffFileLoadingBoundary.tsx | 27 +++ apps/web/src/components/diffs/DiffFileStatus.tsx | 39 ++++ apps/web/src/components/diffs/diffFileTree.logic.test.ts | 6 +- apps/web/src/components/diffs/useCodeViewFileReveal.ts | 11 +- apps/web/src/components/diffs/useReviewFilePatches.ts | 229 ++++++++++++++++++ apps/web/src/lib/diffFileContents.test.ts | 4 +- apps/web/src/lib/diffRendering.test.ts | 30 +++ apps/web/src/lib/diffRendering.ts | 12 +- packages/client-runtime/src/state/review.ts | 36 ++- packages/contracts/src/review.ts | 17 ++ 22 files changed, 1483 insertions(+), 389 deletions(-)