Runs / loan-contract Batch Runs from different design-system versions should not be compared.
page.tsx As the agent left it; marked lines broke a rule.
Violations 20 counted, under 4 rules. “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 read_file 1,390 40 $0.0000 1 list_components 2,200 84 $0.0000 2 write_file 4,733 2,487 $0.0000 3
cdb5d9e77633
Output cap The provider's default 12 } from "@vektos/ds";
13 import {
14 Table,
15 TableHead,
16 TableBody,
17 TableRow,
18 TableHeader,
19 TableCell,
20 } from "@vektos/ds";
21 import {
22 Badge,
23 Stack,
24 Heading,
25 Text,
26 } from "@vektos/ds";
27
28 export default function LoanDetailPage() {
29 const {
30 contract: {
31 number,
32 product,
33 status,
34 principal,
35 nominalRate,
36 apr,
37 termMonths,
38 monthlyPayment,
39 startDate,
40 outstanding,
41 },
42 schedule,
43 documents,
44 } = data;
45
46 return (
47 <Card>
48 <CardHeader>
49 <CardTitle>{product}</CardTitle>
50 </CardHeader>
51
52 <CardBody>
53 <Stack gap={4}>
54 <DataList>
55 <DataList.Row label="Contract number"> {number}</DataList.Row>
56 <DataList.Row label="Status"> <Badge variant="surface">{status}</Badge> </DataList.Row>
57 <DataList.Row label="Amount borrowed"> {FormatNumber value={principal} format="currency" currency="EUR"} </DataList.Row>
58 <DataList.Row label="Nominal interest rate"> {FormatNumber value={nominalRate} format="percent"} </DataList.Row>
59 <DataList.Row label="APR"> {FormatNumber value={apr} format="percent"} </DataList.Row>
60 <DataList.Row label="Term"> {termMonths} months </DataList.Row>
61 <DataList.Row label="Monthly payment"> {FormatNumber value={monthlyPayment} format="currency" currency="EUR"} </DataList.Row>
62 <DataList.Row label="Outstanding"> {FormatNumber value={outstanding} format="currency" currency="EUR"} </DataList.Row>
63 <DataList.Row label="Start date"> {new Date(startDate).toLocaleDateString()} </DataList.Row>
64 </DataList>
65 </Stack>
66 </CardBody>
67
68 <CardFooter>
69 <Heading size="3">Repayment schedule</Heading>
70 <Table>
71 <TableHead>
72 <TableRow>
73 <TableCell>Due date</TableCell>
74 <TableCell>Payment</TableCell>
75 <TableCell>Principal</TableCell>
76 <TableCell>Interest</TableCell>
77 <TableCell>Balance</TableCell>
78 <TableCell>Status</TableCell>
79 </TableRow>
80 </TableHead>
81 <TableBody>
82 {schedule.map((inst) => (
83 <TableRow key={inst.number}>
84 <TableCell>{new Date(inst.dueDate).toLocaleDateString()}</TableCell>
85 <TableCell>{FormatNumber value={inst.payment} format="currency" currency="EUR"}</TableCell>
86 <TableCell>{FormatNumber value={inst.principal} format="currency" currency="EUR"}</TableCell>
87 <TableCell>{FormatNumber value={inst.interest} format="currency" currency="EUR"}</TableCell>
88 <TableCell>{FormatNumber value={inst.remaining} format="currency" currency="EUR"}</TableCell>
89 <TableCell>
90 <Badge
91 variant={
92 inst.status === "paid"
93 ? "positive"
94 : inst.status === "due"
95 ? "warning"
96 : "surface"
97 }
98 >
99 {inst.status}
100 </Badge>
101 </TableCell>
102 </TableRow>
103 ))}
104 </TableBody>
105 </Table>
106 </CardFooter>
107
108 <CardFooter>
109 <Heading size="3">Signed documents</Heading>
110 <Stack gap={2} direction="horizontal" align="center">
111 {documents.map((doc) => (
112 <Stack key={doc.name} gap={1}>
113 <Text>{doc.name}</Text>
114 <Text>{new Date(doc.signedAt).toLocaleDateString()}</Text>
115 </Stack>
116 ))}
117 </Stack>
118 </CardFooter>
119 </Card>
120 );
121 }
typecheck/TS1381
9 quality
lint/syntax-error 1 quality render/build-failed 1 completeness