Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 18 additions & 2 deletions src/components/admin/review-row.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -1047,9 +1047,13 @@ export function ReviewRow({
return next
})
}}
className="shrink-0 flex h-4 w-4 items-center justify-center rounded-full border border-border/60 bg-background text-muted-foreground hover:border-primary/60 hover:text-primary transition-colors"
className="group shrink-0 flex cursor-pointer items-center gap-1.5 rounded-full border border-border px-2 py-1 font-mono text-[9px] font-semibold uppercase tracking-[0.12em] text-muted-foreground transition-colors hover:border-primary hover:bg-primary/10 hover:text-primary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50"
>
<span className="h-2 w-2 rounded-full" />
{/* A bare dot reads as a bullet at this size —
the action has to be spelled out to be
findable at all. */}
<span className="h-2 w-2 rounded-full border border-current" />
Make canonical
</button>
</div>
)
Expand Down Expand Up @@ -1088,6 +1092,18 @@ export function ReviewRow({
</div>
</div>

{/* Approving now runs something other than what was
proposed — say so before the operator commits. */}
{isModified && !mergeError && (
<p className="text-[11px] text-primary">
Edited — approving merges {effectiveFrom.length} source
{effectiveFrom.length === 1 ? "" : "s"} into{" "}
{getDisplayName(subjectMap.get(canonicalId), schemas) ??
canonicalId}
, not the original proposal.
</p>
)}

{/* Merge error */}
{mergeError && (
<p className="text-[11px] text-amber-400">{mergeError}</p>
Expand Down
Loading