Review ladder

Pro

How much a person reviews before agents act: the ladder from Advise to Full delegation. Each rung says what happens at it. A rung the account or the person's role doesn't allow stays visible, locked, with its reason, so the whole range is legible.

Markdown

Preview

Install

With the Candor CLI

First time? Get started sets up the registry and theme. Or with shadcn directly: npx shadcn@latest add @candor/review-ladder

Brings in: locale, work, utils · npm: lucide-react@^1.67.0

Usage

TSX · The example above
"use client"

import * as React from "react"
import type { ReviewLevel } from "@/lib/work"
import { ReviewLadder } from "@/components/review-ladder"

export default function Example() {
  const [level, setLevel] = React.useState<ReviewLevel>("R3")
  return <ReviewLadder className="max-w-2xl" value={level} onChange={setLevel} locked={{ R5: "Acme's policy keeps Production changes at R4 or below." }} />
}

<ReviewLadder>

PropTypeDefaultDescription
valuerequiredReviewLevel—The current review level, R1 (Advise) to R5 (Full delegation).
onChange((level: ReviewLevel) => void) | undefined—Makes the rungs choosable; called with the level picked.
lockedPartial<Record<ReviewLevel, string | undefined>> | undefined{}Reasons a level can't be chosen.
classNamestring | undefined—Extra classes for the outer element.

Strings

The fixed words, in English by default. Change any of them under reviewLadder in <LocaleProvider strings={{ … }}>; the table is exported as reviewLadderStrings.

KeyEnglish
labelReview level
R1Advise
R1DetailAgents explain what to do. You make the change.
R2Draft
R2DetailAgents prepare the change as a diff. You apply it.
R3Build & hold
R3DetailAgents build and test in a test environment. Nothing ships until you sign off.
R4Ship with a window
R4DetailAgents ship after tests pass, inside a window you set, with rollback ready.
R5Full delegation
R5DetailAgents ship on their own. You see everything after.