Runs / stock-adjustment Batch Runs from different design-system versions should not be compared.
The page A screenshot in each theme, as the benchmark took it.
page.tsx As the agent left it; marked lines broke a rule.
Violations 2 counted, under 1 rule. “Not counted” marks a compiler error that restates a design-system violation, “Ignored” one the agent silenced with a comment.
Steps One row per model call, with the tools it asked for. An agent that reads the guidelines before writing shows it here; what a checker or submit_view answered is under its call.
Step Tools Tokens in Tokens out Cost 0 list_files 157 29 $0.0000 1 read_file 840 33 $0.0000 2 get_guidelines, list_components 255 37 $0.0000 3
Output cap 20,000 tokens a step 3 import { useState } from "react";
4 import data from "./fixture.json";
5 import {
6 Alert,
7 Button,
8 Card,
9 CardBody,
10 CardHeader,
11 CardTitle,
12 DataList,
13 FormField,
14 Heading,
15 NumberInput,
16 RadioGroup,
17 Stack,
18 Text,
19 Textarea,
20 } from "@vektos/ds";
21
22 export default function Page() {
23 const { item, reasons } = data;
24
25 const [quantity, setQuantity] = useState<number | null>(null);
26 const [reason, setReason] = useState<string>("");
27 const [comment, setComment] = useState<string>("");
28 const [errors, setErrors] = useState<{ quantity?: string; reason?: string }>({});
29 const [savedQuantity, setSavedQuantity] = useState<number | null>(null);
30
31 const validate = () => {
32 const next: { quantity?: string; reason?: string } = {};
33 if (quantity === null) {
34 next.quantity = "Enter the new quantity.";
35 } else if (!Number.isInteger(quantity)) {
36 next.quantity = "Enter a whole number.";
37 } else if (quantity < 0) {
38 next.quantity = "Quantity cannot be negative.";
39 }
40 if (!reason) {
41 next.reason = "Choose a reason.";
42 }
43 setErrors(next);
44 return Object.keys(next).length === 0;
45 };
46
47 const handleSave = () => {
48 if (!validate()) return;
49 setSavedQuantity(quantity);
50 };
51
52 const difference = quantity === null ? null : quantity - item.onHand;
53 const differenceText =
54 difference === null
55 ? ""
56 : `${difference >= 0 ? "+" : ""}${difference} ${item.unit}`;
57
58 return (
59 <Stack gap="6" marginBlock="6" marginInline="6">
60 <Heading level={1}>Correct stock</Heading>
61
62 <Card>
63 <CardHeader>
64 <CardTitle>Item</CardTitle>
65 </CardHeader>
66 <CardBody>
67 <DataList
68 items={[
69 { label: "SKU", value: <Text as="span" mono>{item.sku}</Text> },
70 { label: "Name", value: item.name },
71 { label: "Location", value: item.location },
72 {
73 label: "On hand",
74 value: (
75 <Text as="span" numeric>
76 {item.onHand} {item.unit}
77 </Text>
78 ),
79 },
80 ]}
81 />
82 </CardBody>
83 </Card>
84
85 <Card>
86 <CardHeader>
87 <CardTitle>Adjustment</CardTitle>
88 </CardHeader>
89 <CardBody>
90 <Stack gap="4">
91 <FormField label="New quantity" required error={errors.quantity}>
92 <NumberInput
93 value={quantity}
94 onValueChange={setQuantity}
95 min={0}
96 step={1}
97 fractionDigits={0}
98 />
99 </FormField>
100
101 {difference !== null && (
102 <Text tone="muted" size="sm">
103 Difference: {differenceText}
104 </Text>
105 )}
106
107 <RadioGroup
108 label="Reason"
109 required
110 value={reason}
111 onValueChange={setReason}
112 options={reasons.map((r) => ({
113 label: r.label,
114 value: r.code,
115 description: r.description,
116 }))}
117 error={errors.reason}
118 />
119
120 <FormField label="Comment">
121 <Textarea
122 value={comment}
123 onChange={(e) => setComment(e.target.value)}
124 rows={3}
125 />
126 </FormField>
127
128 <Button onClick={handleSave}>Save adjustment</Button>
129
130 {savedQuantity !== null && (
131 <Alert tone="success" title="Adjustment saved">
132 New quantity: {savedQuantity} {item.unit}.
133 </Alert>
134 )}
135 </Stack>
136 </CardBody>
137 </Card>
138 </Stack>
139 );
140 }
141
get_component, get_component, get_component, get_component
4 get_component, get_component, get_component, get_component, get_component, get_component, get_component, get_component 3,030 171 $0.0000
5 get_component 6,220 28 $0.0000
6 get_component 462 631 $0.0000
7 write_file 1,639 3,769 $0.0000
8 check_code check_code: No violations.
3,832 870 $0.0000